xianyinxin commented on a change in pull request #26167: [SPARK-28893][SQL]
Support MERGE INTO in the parser and add the corresponding logical plan
URL: https://github.com/apache/spark/pull/26167#discussion_r336603375
##########
File path:
sql/catalyst/src/main/antlr4/org/apache/spark/sql/catalyst/parser/SqlBase.g4
##########
@@ -219,6 +219,12 @@ statement
| RESET
#resetConfiguration
| DELETE FROM multipartIdentifier tableAlias whereClause?
#deleteFromTable
| UPDATE multipartIdentifier tableAlias setClause whereClause?
#updateTable
+ | MERGE INTO target=multipartIdentifier targetAlias=tableAlias
+ USING (source=multipartIdentifier |
+ '(' sourceQuery=query')') sourceAlias=tableAlias
+ ON mergeCondition=booleanExpression
+ (matchedClause)*
+ (notMatchedClause)*
#mergeIntoTable
Review comment:
Here we don't limit the number of clauses. We limit number of clauses (like
at most 2 matched and 1 not matched clauses) in Spark Parser, and throw
ParserException when the limitations are not meet.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]