全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1684
推到 Plurk!
推到 Facebook!

兩個table 的 update 語法

缺席
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2019-05-02 10:05:41 IP:118.169.xxx.xxx 未訂閱
請問各位

以下的語法錯誤(在 a.partno), 要怎麼改才能達到目的 (要把 b.partno 置換成 a.partno), 謝謝!

資料庫是 firebird 2.1x

update m2100 b
set b.partno = a.partno
where
exists(select a.partno from m2000 a where
b.partcode = a.partcode and b.partno <> a.partno)_
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2019-05-02 11:30:49 IP:118.169.xxx.xxx 未訂閱
找到解法了

update m2100 a set a.partno = (select b.partno
from m2000 b where
b.partcode = a.partcode and b.partno <> a.partno))

sql的世界真的是高深莫測啊!
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2019-05-02 14:37:44 IP:118.169.xxx.xxx 未訂閱
剛刪檢查資料庫, 發現2F的做法, 結果讓 m2100 的 partno 都變空了!
jackiemi2_seed
中階會員


發表:37
回覆:97
積分:76
註冊:2006-09-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2019-07-24 13:39:43 IP:118.163.xxx.xxx 未訂閱
update m2100
set partno=m0.partno
from m2000 m0
where m2100.partcode=m0.partcode
and m2100.partno<>m0.partno
------
OS : Win 7 pro
Program : Delphi 7
DataBase : Ms Sql 2008
系統時間:2024-04-28 8:05:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!