Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-5135

Planner#parse can't parse DAY() function

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 1.30.0
    • None
    • core

    Description

      Hi team,

      I might be missing something, but `Planner#parse` can't parse `DAY()` function while it can parse other YEAR(), MONTH(), HOUR() and so on.

       

      import org.apache.calcite.sql.parser.SqlParseException;
      import org.apache.calcite.sql.validate.SqlValidator;
      import org.apache.calcite.tools.FrameworkConfig;
      import org.apache.calcite.tools.Frameworks;
      import org.apache.calcite.tools.Planner;
      
      public class Main {
          public static void main(String[] args) throws SqlParseException {
              FrameworkConfig config = Frameworks.newConfigBuilder().build();
              {
                  Planner planner = Frameworks.getPlanner(config);
                  System.out.println(planner.parse("select months(t) from tbl"));
              }
              {
                  Planner planner = Frameworks.getPlanner(config);
                  System.out.println(planner.parse("select month(t) from tbl"));
              }
              {
                  Planner planner = Frameworks.getPlanner(config);
                  System.out.println(planner.parse("select hours(t) from tbl"));
              }
              {
                  Planner planner = Frameworks.getPlanner(config);
                  System.out.println(planner.parse("select hour(t) from tbl"));
              }
              {
                  Planner planner = Frameworks.getPlanner(config);
                  System.out.println(planner.parse("select days(t) from tbl"));
              }
              {
                  Planner planner = Frameworks.getPlanner(config);
                  // This throws `org.apache.calcite.sql.parser.SqlParseException: Encountered "day" ...`
                  System.out.println(planner.parse("select day(t) from tbl"));
              }
          }
      }
       

      Is this a bug? Is there any way to parse DAY() function? Thanks.

      Attachments

        Issue Links

          Activity

            People

              jiajunbernoulli Jiajun Xie
              komamitsu Mitsunori Komatsu
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 20m
                  20m