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'
 

相關文章

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.