update進行跨表之間的更新,update跨表更新

來源:互聯網
上載者:User

update進行跨表之間的更新,update跨表更新

有時我們可能需要多個表之間進行更新資料。我們可以使用這個語句

UPDATE table1,table2 SET table1.column=table2.column, table1.column1=table2.column1WHERE table1.column3=table2.column3



兩個表之間更新資料

應該是用SQL語句吧?

update table1 set count=table2.count from table2 where table2.tid=table1.id

這樣就可以實現table1表的更新了

=====================================================================================
這已經是最好的方法了好不好.

而且效率很高啊,這是直接連接兩上表來更新資料.
 
oracle 10g中通過update關鍵字跨表更新

1、update emp A,emp2 B set B.comm=A.comm WHERE B.empno=A.empno;
2、update emp2 B set B.comm=(select A.comm emp A where A.empno=B.empno group by A.comm);
如果不增加group by,存在重複值會報錯。
3、將所有id存為一個檔案或者指定id
spoll id.txt
select empno from emp;
spool off

寫個shell
#!/bin/sh
cid=$1
if [ -z "$1" ];then
echo "Usage : $0 id.txt"
exit 1;
fi
for id in `cat id.txt`;do
echo -e "update emp2 B set B.comm=(select A.comm from emp A where A.empno='$id')
where B.id='$id';"
done | sqlplus -s 'user/123456'
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.