我在DB2查询后运行:
UPDATE Table
SET DATE(COLA) = '2017-03-31'
WHERE DATE(COLA) = '2017-03-29';
COLA属于TIMESTAMP。
样本值:
COLA:
2017-03-29-00.00.00.000000
预期更新价值:
COLA:
2017-03-31-00.00.00.000000
当我在查询之上运行时,我正在
SQL代码SQLCODE = -104,ERROR:ILLEGAL SYMBOL"("。一些符号表示 可能是法律的:=。
有没有人可以帮我解决这个问题?
非常感谢!
答案 0 :(得分:3)
我相信您的问题出在SET
部分。试试这个:
UPDATE Table
SET COLA = DATE('2017-03-31') -- TIMESTAMP ('2017-03-31-00.00.00.000000')
WHERE DATE(COLA) = '2017-03-29';
您想要更新列,而不是更新在列上执行的函数的结果。
答案 1 :(得分:0)
就这样做:
UPDATE Table
SET COLA = '2017-03-31-00.00.00.000000'
WHERE DATE(COLA) = '2017-03-29';