[
https://issues.apache.org/jira/browse/CALCITE-3030?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16828007#comment-16828007
]
Stamatis Zampetakis commented on CALCITE-3030:
----------------------------------------------
Hi [~02922367405], it seems that there are
[tests|https://github.com/apache/calcite/blob/a3f81bb7b088fd8c1d0c1df3b0f2b0cf122633de/core/src/test/java/org/apache/calcite/sql/parser/SqlParserTest.java#L3772]
which cover aliased tables and merge statements. Can you try to provide a unit
test in SqlParserTest which reproduces the problem?
> 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
> Priority: Major
> Fix For: next
>
> Attachments: [email protected]
>
>
> 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)