Chr*_*ris 1 database db2 db2-400 ibm-midrange
有人知道 DB2 for i (V6r1) 是否支持类似的东西
INSERT ON DUPLICATE KEY UPDATE.
Run Code Online (Sandbox Code Playgroud)
我需要使用连接进行更新,但不想使用子查询。
小智 6
您可以通过使用“MERGE”来解决这个问题。像这样:
1.第一步:表'TEST'有一个表结构(A,B,C),主键'A',存在数据记录(1,2,3)。
2.第二步:现在您可以使用此 SQL 命令插入一条记录 (1,9,9),如下所示:
MERGE INTO TEST AS T
USING (VALUES( 1, 9, 9)) AS DAT(A, B, C)
ON T.A = DAT.A
WHEN MATCHED THEN UPDATE SET T.C = DAT.C
WHEN NOT MATCHED THEN INSERT (A, B, C) VALUES (DAT.A, DAT.B, DAT.C)
Run Code Online (Sandbox Code Playgroud)