Viliam Durina created CALCITE-3970: -------------------------------------- Summary: Table-valued function TUMBLE uses non-standard syntax Key: CALCITE-3970 URL: https://issues.apache.org/jira/browse/CALCITE-3970 Project: Calcite Issue Type: Bug Components: core Affects Versions: 1.22.0 Reporter: Viliam Durina
The currently supported syntax is this: {code:java} SELECT * FROM TABLE(TUMBLE(TABLE my_table, ... {code} But the SQL standard specifies that {{my_table}} must be in parentheses, such as here: {code:java} SELECT * FROM TABLE(TUMBLE(TABLE(my_table), ... {code} The second syntax is currently rejected with: {code:none} Exception in thread "main" org.apache.calcite.sql.parser.SqlParseException: Encountered "(" at line 1, column 33. Was expecting one of: <BRACKET_QUOTED_IDENTIFIER> ... <QUOTED_IDENTIFIER> ... <BACK_QUOTED_IDENTIFIER> ... <IDENTIFIER> ... <UNICODE_QUOTED_IDENTIFIER> ... {code} I followed this document: [http://standards.iso.org/ittf/PubliclyAvailableStandards/c069776_ISO_IEC_TR_19075-7_2017.zip] The {{TABLE}} clause acts in both ways: (1) to convert a table value to a table object (when used in the {{FROM}} clause to convert the function result) and (2) to convert a table object to a table value (when used to convert arguments to a function). -- This message was sent by Atlassian Jira (v8.3.4#803005)