我有一个表,我需要在其中更改多行中几列的值。
要更改值的表如下所示:
我尝试包含更新值但没有成功的代码是:
UPDATE <table_name>
SET (IDENTIFIER_1, IDENTIFIER_2)
VALUES (1635, 1755),
(2024, 2199),
(1868, 1692),
(3577, 4825)
WHERE ID
IN ('1',
'23',
'54',
'21');
Run Code Online (Sandbox Code Playgroud)
老实说,我不确定 db2 SQL 是否支持这一点。错误是:
- [错误代码:-104,SQL 状态:42601] DB2 SQL 错误:SQLCODE=-104,SQLSTATE=42601,SQLERRMC=update *
我还应该建议我是 db2 新手。
您可以随时使用合并
MERGE INTO TABLE1
USING (
VALUES (1,1635, 1755),
(23,2024, 2199),
(54,1868, 1692) ) dummytable(ID_T, INF1,INF2)
on table1.id_table = dummytable.id_t
when matched
then UPDATE set TABLE1.IDENTIFIER_1 = dummytable.INF1
, TABLE1.IDENTIFIER_2 = dummytable.INF2
else ignore
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1770 次 |
| 最近记录: |