我ACCOUNT
的结构表如下:
ACCOUNT_ID | ACCOUNT_STATUS|
004460721 | 2 |
042056291 | 5 |
601272065 | 3 |
我需要使用一个语句一次更新三行,SELECT
这样第二列将分别为 5、3、2。
我使用了以下查询,但似乎缺少一些东西
UPDATE ACCOUNT
SET ACCOUNT_STATUS = CASE
WHEN ACCOUNT_STATUS = '004460721' THEN 5
WHEN ACCOUNT_STATUS = '042056291' THEN 3
WHEN ACCOUNT_STATUS = '601272065' THEN 2
WHERE ACCOUNT_ID IN ('004460721','042056291','601272065')
我的问题,这种方式正确吗?如果不是,我可以使用CASE WHEN
语句以及如何或我只能选择使用SUB-SELECT
来在一个语句中实现这一目标吗?
请注意,这是为了SQL ORACLE