如何更新 DB2 中多行的同一列
How to update the same column for multiple rows in DB2
我需要更新 Client
table 中的所有记录,如果 address_1
是空白,但 address_2
不是。在那些情况下,我想将 address_2
移动到 address_1
。到目前为止,这是我的查询:
UPDATE Client SET Address_1 = 'address1', address_2 = ''
WHERE client_id = 'client_id'
但是我不想传入 client_id
,而是想更新每条记录。
您需要的查询是
UPDATE client SET address_1 = address_2, address_2 = ''
WHERE address_1 = '' AND address_2 != ''
在 WHERE
中找到所有问题行,然后将 address_2
移动到 address_1
并清空 address_2
注意:确保您没有将空字符串 ''
与 NULL
混淆。在 DB2 中,这些是不一样的。如果您的值实际上是 NULL
,您的查询需要是:
UPDATE client SET address_1 = address_2, address_2 = NULL
WHERE address_1 IS NULL AND address_2 IS NOT NULL
我需要更新 Client
table 中的所有记录,如果 address_1
是空白,但 address_2
不是。在那些情况下,我想将 address_2
移动到 address_1
。到目前为止,这是我的查询:
UPDATE Client SET Address_1 = 'address1', address_2 = ''
WHERE client_id = 'client_id'
但是我不想传入 client_id
,而是想更新每条记录。
您需要的查询是
UPDATE client SET address_1 = address_2, address_2 = ''
WHERE address_1 = '' AND address_2 != ''
在 WHERE
中找到所有问题行,然后将 address_2
移动到 address_1
并清空 address_2
注意:确保您没有将空字符串 ''
与 NULL
混淆。在 DB2 中,这些是不一样的。如果您的值实际上是 NULL
,您的查询需要是:
UPDATE client SET address_1 = address_2, address_2 = NULL
WHERE address_1 IS NULL AND address_2 IS NOT NULL