最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ORACLE兩表關(guān)聯(lián)更新三種方式

 更新時(shí)間:2024年05月24日 12:06:43   作者:Terence全棧開發(fā)  
這篇文章主要介紹了ORACLE兩表關(guān)聯(lián)更新三種方式,文章通過代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下

準(zhǔn)備工作

創(chuàng)建如下表數(shù)據(jù)

drop table demo_t1;
drop table demo_t2;
CREATE TABLE DEMO_T1 
(
  FNAME VARCHAR2(20) 
, FMONEY VARCHAR2(20) 
);
ALTER TABLE demo_t1 ADD PRIMARY KEY(FNAME);
insert into demo_t1 (fname,fmoney) values('A','20');
insert into demo_t1 (fname,fmoney) values('B','30');
CREATE TABLE DEMO_T2
(
  FNAME VARCHAR2(20) 
, FMONEY VARCHAR2(20) 
);
ALTER TABLE demo_t2 ADD PRIMARY KEY(FNAME);
insert into demo_t2 (fname,fmoney) values('C','10');
insert into demo_t2 (fname,fmoney) values('D','20');
insert into demo_t2 (fname,fmoney) values('A','100');

現(xiàn)需求:參照T2表,修改T1表,修改條件為兩表的fname列內(nèi)容一致。

方式1:update

UPDATE DEMO_T1 t1
SET T1.FMONEY = (select T2.FMONEY from DEMO_T2 T2 where T2.FNAME = T1.FNAME)
WHERE EXISTS(SELECT 1 FROM DEMO_T2 T2 WHERE T2.FNAME = T1.FNAME);

如果同時(shí)更新多個(gè)字段可以參照以下語法:

UPDATE DEMO_T1 t1
SET (字段一,字段二,...) = (select 字段一,字段二,... from DEMO_T2 T2 where T2.FNAME = T1.FNAME)
WHERE EXISTS(SELECT 1 FROM DEMO_T2 T2 WHERE T2.FNAME = T1.FNAME);

方式2:內(nèi)聯(lián)視圖更新

注意:需要取數(shù)據(jù)的表,該字段必是主鍵或者有唯一約束

UPDATE (
select t1.fmoney  fmoney1,t2.fmoney  fmoney2 from demo_t1 t1,demo_t2 t2 where t1.fname = t2.fname
)t
set fmoney1 =fmoney2;

方式3:merge更新

merge into demo_t1 t1
using (select t2.fname,t2.fmoney from demo_t2 t2) t
on (t.fname = t1.fname)
when matched then 
  update  set t1.fmoney = t.fmoney;

到此這篇關(guān)于ORACLE兩表關(guān)聯(lián)更新三種方式的文章就介紹到這了,更多相關(guān)ORACLE兩表關(guān)聯(lián)更新內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

清苑县| 繁昌县| 承德县| 晴隆县| 米泉市| 德保县| 容城县| 昌邑市| 黄骅市| 丹江口市| 济阳县| 江都市| 香格里拉县| 玉山县| 新竹市| 湘阴县| 渝中区| 河津市| 尤溪县| 博兴县| 宁德市| 彰武县| 河间市| 阿克苏市| 苏州市| 浮山县| 乡城县| 绵竹市| 吉隆县| 内江市| 新田县| 吐鲁番市| 会同县| 望都县| 樟树市| 肇源县| 枝江市| 吉木乃县| 阳江市| 澎湖县| 同江市|