[英]How to update a single column with multiple data in oracle 12c
我正在更新一個Oracle表,同一列具有多個數據。 我該如何編寫代碼?
我運行此代碼,但有錯誤..
我要用女孩代替男孩,用白色代替黑色,用顏色代替綠色。
UPDATE BIG
SET
FNAME = CASE
WHEN FNAME = 'BOY' THEN 'GIRL'
WHEN FNAME = 'BLACK' THEN 'WHITE'
WHEN FNAME = 'GREEN' THEN 'COLOR'
END;
我需要能夠編寫一條語句來使用不同的多個數據更新同一列。
您需要處理ELSE
(所有行將使用A-> A(身份)進行更新:
UPDATE BIG
SET
FNAME = CASE FNAME
WHEN 'BOY' THEN 'GIRL'
WHEN 'BLACK' THEN 'WHITE'
WHEN 'GREEN' THEN 'COLOR'
ELSE FNAME
END;
或更好地過濾要更新的行:
UPDATE BIG
SET
FNAME = CASE
WHEN FNAME = 'BOY' THEN 'GIRL'
WHEN FNAME = 'BLACK' THEN 'WHITE'
WHEN FNAME = 'GREEN' THEN 'COLOR'
END;
WHERE FNAME IN('BOY', 'BLACK', 'GREEN');
<=>
UPDATE BIG
SET FNAME = DECODE(FNAME, 'BOY', 'GIRL', 'BLACK', 'WHITE', 'GREEN', 'COLOR')
WHERE FNAME IN('BOY', 'BLACK', 'GREEN');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.