Я определил общее табличное выражение, используя DB2 , например:
With Example_CommonTableExpression AS (select * from Table1 inner join Table2...)
Я хотел бы обновить tableC, которая имеет ссылку в определенном CommonTableExpression.
update tableC
set somefield="xyz"
where tableC.someValue IN (select someValue
from Example_CommonTableExpression)
Но я получаю следующую ошибку
42601 Неожиданный токен «With Example_CommonTableExpression AS (» был найден после «BEGIN-OF-STATEMENT»
Это обновление не работает с выражениями CommonTable?
к сожалению, я не нашел большой помощи в Справочном документе [ref doc] [1]
Проблема / Обходной путь:
Я могу использовать весь оператор выбора вместо проверки его в Example_CommonTableExpression, но у меня есть несколько операторов обновления, и наличие большого вспомогательного выбора не выглядит привлекательным.