You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@calcite.apache.org by "wuzq (JIRA)" <ji...@apache.org> on 2019/04/28 11:34:00 UTC

[jira] [Created] (CALCITE-3030) merge sql problem

wuzq created CALCITE-3030:
-----------------------------

             Summary: merge sql problem
                 Key: CALCITE-3030
                 URL: https://issues.apache.org/jira/browse/CALCITE-3030
             Project: Calcite
          Issue Type: Bug
          Components: core
    Affects Versions: 1.19.0
         Environment: OS: win10 (17763)

JDK: 1.7
            Reporter: wuzq
             Fix For: next


The update section of "merge SQL" reports an error when using an alias
{code:java}
// if i replace red code with "b = '123456'", I don't get an error
String sql = "merge into xxx as t1 using yyy as t2 on t1.a = t2.a when matched then update set t1.b = '123456'" ; 
SqlParser.ConfigBuilder configBuilder = SqlParser.configBuilder();
configBuilder.setCaseSensitive(false);
SqlParser.Config config = configBuilder.build();
SqlParser parser = SqlParser.create(sql, config);
SqlNode node = parser.parseQuery();
{code}
the error
{code:java}
//代码占位符
Exception in thread "main" org.apache.calcite.sql.parser.SqlParseException: Encountered "." at line 1, column 84.
Was expecting:
"=" ...

at org.apache.calcite.sql.parser.impl.SqlParserImpl.convertException(SqlParserImpl.java:355)
at org.apache.calcite.sql.parser.impl.SqlParserImpl.normalizeException(SqlParserImpl.java:143)
at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:156)
at com.yatop.Calcite.main(Calcite.java:39)
Caused by: org.apache.calcite.sql.parser.impl.ParseException: Encountered "." at line 1, column 84.
Was expecting:
"=" ...

at org.apache.calcite.sql.parser.impl.SqlParserImpl.generateParseException(SqlParserImpl.java:25299)
at org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_consume_token(SqlParserImpl.java:25116)
at org.apache.calcite.sql.parser.impl.SqlParserImpl.WhenMatchedClause(SqlParserImpl.java:1414)
at org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlMerge(SqlParserImpl.java:1383)
at org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlStmt(SqlParserImpl.java:861)
at org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlStmtEof(SqlParserImpl.java:877)
at org.apache.calcite.sql.parser.impl.SqlParserImpl.parseSqlStmtEof(SqlParserImpl.java:199)
at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:148)
... 1 more
{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)