Hello all, I'm trying to parse a postgres sql query that contains :: for casting. The parser fails when it reaches the colon. I'm using version 1.21.0. This is what I'm running (with a simple query to showcase the error):
SqlParser.Config parserConfig = SqlParser.configBuilder().setConformance(SqlConformanceEnum.LENIENT).build(); SqlParser parser1 = SqlParser.create("SELECT 'test'::text t from countries", parserConfig); SqlNode parsedQuery1 = parser1.parseQuery(); The error: org.apache.calcite.sql.parser.SqlParseException: Encountered ":" at line 1, column 14. Was expecting one of: <EOF> "AS" ... "EXCEPT" ... "FETCH" ... "FROM" ... "INTERSECT" ... "LIMIT" ... "OFFSET" ... "ORDER" ... "MINUS" ... "UESCAPE" ... "UNION" ... <QUOTED_STRING> ... "," ... <BRACKET_QUOTED_IDENTIFIER> ... <QUOTED_IDENTIFIER> ... <BACK_QUOTED_IDENTIFIER> ... <IDENTIFIER> ... <UNICODE_QUOTED_IDENTIFIER> ... "." ... "NOT" ... "IN" ... "<" ... "<=" ... ">" ... ">=" ... "=" ... "<>" ... "!=" ... "BETWEEN" ... "LIKE" ... "SIMILAR" ... "+" ... "-" ... "*" ... "/" ... "%" ... "||" ... "AND" ... "OR" ... "IS" ... "MEMBER" ... "SUBMULTISET" ... "CONTAINS" ... "OVERLAPS" ... "EQUALS" ... "PRECEDES" ... "SUCCEEDS" ... "MULTISET" ... "[" ... at org.apache.calcite.sql.parser.impl.SqlParserImpl.convertException(SqlParserImpl.java:343) at org.apache.calcite.sql.parser.impl.SqlParserImpl.normalizeException(SqlParserImpl.java:142) at org.apache.calcite.sql.parser.SqlParser.handleException(SqlParser.java:147) at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:162) Perhaps, I have just not found the right conformance for postgres sql. Thanks for your help! Rick