1、數據庫中的UPDATE語法大家並不陌生
UPDATE TABLE_NAME SET COUMN_NAME = 'XXX' WHERE ID = 1;
一個簡單的UPDATE語句是每個初學者都會的。
2、批量更新
UPDATE TABLE_1 T SET T.CREATE_ORG_NAME=
(SELECT T1.CHANNEL_NAME FROM TABLE_2 T1 where T.CREATE_ORG_ID=T1.CHANNEL_ID);
commit;
大家看下這條更新語句,是個批量的更新,我們來更新TABLE_1的列CREATE_ORG_NAME,這個列的數據來源是TABLE_2 中的CHANNEL_NAME ;
更新的條件是T.CREATE_ORG_ID=T1.CHANNEL_ID;這個語句就很精妙的更新了,這個是對TABLE_1 中列CREATE_ORG_NAME的全部更新;所以用這個語句的時候一定要長點心,是不是全部批量更新,還是個別更新。
3、在某種條件下的批量更新
UPDATE TABLE_1 T
SET T.ROLE_ID=(SELECT Z.ROLE_ID FROM TABLE_2 Z
WHERE T.PROD_OFFER_ID=Z.OFFER_ID)
WHERE EXISTS(SELECT 1 FROM TABLE_2 Z
WHERE T.PROD_OFFER_ID=Z.OFFER_ID);
COMMIT;
這個批量更新比第二步的批量更新更精致的表達更新內容
4、還有一種拼接UPDATE語句的語法
select 'update TABLE_1 t set t.attr_value='''||a.attr_value||''',t.remark=''TEST'' where t.prod_inst_id='||a.prod_inst_id||' and t.attr_id='||a.attr_id||'; ' from TABLE_2 a;
這種拼接UPDATE語句的用戶下個隨筆中詳細講下,這個就給大家看下,可以這樣使用。