我正在尝试运行以下查询,但我一直在回复:
Error code 30000, SQL state 42X01: Syntax error: Encountered "WHERE" at line 5, column 38.
MERGE INTO FOO
USING BAR
ON FOO."NAME" = BAR."NAME"
WHEN MATCHED THEN
UPDATE SET FOO."NAME" = 'qwerty' WHERE FOO."AGE" > 30
WHEN NOT MATCHED THEN
INSERT (guid) values('qwerty')
如果我删除WHERE FOO."AGE" > 30
,那么它似乎没问题。是否无法在WHERE
的{{1}}中指定UPDATE
条款?
我正在使用最新的apache derby嵌入式数据库版本MERGE
答案 0 :(得分:0)
你可以试试这个:
MERGE INTO FOO
USING BAR
ON FOO."NAME" = BAR."NAME"
AND FOO."AGE" > 30
WHEN MATCHED THEN
UPDATE SET FOO."NAME" = 'qwerty'
WHEN NOT MATCHED THEN
INSERT (guid) values('qwerty')