我已经使用 DB2 定义了公用表表达式,例如:
With Example_CommonTableExpression AS (select * from Table1 inner join Table2...)
我想更新在定义的CommonTableExpression中具有引用的tableC。
update tableC
set somefield="xyz"
where tableC.someValue IN (select someValue
from Example_CommonTableExpression)
但是出现以下错误
42601在“ BEGIN-OF-STATEMENT”之后找到了意外的令牌“ With Example_CommonTableExpression AS(”)
是否该更新不适用于CommonTable Expressions? 不幸的是,我没有在参考文档[ref doc] [1]
中找到太多帮助问题/解决方法:
我可以使用整个select语句来代替在Example_CommonTableExpression中检查它,但是我有多个update语句,并且有一个较大的sub select看起来并不吸引人。