Hi community:

Parsing sql fails, when meeting the identifier starting with number.

Here, test case:
// org.apache.calcite.test.SqlToRelConverterTest
@Test void testIdentifierStartWithNumber() {
  final String sql =
      "select 1_c1 from (select deptno as 1_c1 from emp)";
  sql(sql).ok();
}

It throws an exception as below:
java.lang.RuntimeException:
org.apache.calcite.sql.parser.SqlParseException: Encountered "1" at line 1,
column 36.
Was expecting one of:
    <QUOTED_STRING> ...
    <BRACKET_QUOTED_IDENTIFIER> ...
    <QUOTED_IDENTIFIER> ...
    <BACK_QUOTED_IDENTIFIER> ...
    <BIG_QUERY_BACK_QUOTED_IDENTIFIER> ...
    <HYPHENATED_IDENTIFIER> ...
    <IDENTIFIER> ...
    <UNICODE_QUOTED_IDENTIFIER> ...

at
org.apache.calcite.sql.parser.SqlParseException.writeReplace(SqlParseException.java:171)

*Mysql supports this case, should calcite support it?*

*Failed png in Calcite:*
[image: image.png]

*Successful png in MySql:*
[image: image.png]



Best XuRenhe

Reply via email to