[SQL ] Update中SET的問題
(針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行)
資料庫名稱:MS-SQL
資料庫版本:2012
內容/問題描述:
是這樣的,
TABLE A Table B Table C
_Id Weapon _Id _MasterId Weapon WeaponX _Id WeaponX WeaponY
1 Sword 1 1 Sword 1 D Leyva Sword
| | 2 | | 2 S of Amu Sword
| | 3 | |
| | 5000 500 Sword
500 Sword
A和B為關聯 (B._MasterId = A._Id)
小弟已經有成功用語法將TableA的資料用Cursor-FETCH的方式Insert到TableB
現在小弟希望把C.WeaponX的資料Update到B.WeaponX
已經試著用過子查詢方式來處理,但是查回項目因為不只一個
直覺寫法是
UPDATE TABLE B
SET WeaponX = (SELECT WeaponX FROM TableC)
WHERE WeaponX = TableC.WeaponY
SET修改成TableC.WeaponX的話只會出現第一筆資料...
看過網路相關的部份似乎沒有相似的解答(幾乎都只有SET = 一值)
還望請先進們不吝賜教
--
愛的她 說的話 多尷尬 字句都是傷疤
淚雙掛 如雨下 滿臉頰 也無意再掙扎
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.67.178.55
※ 文章網址: http://www.ptt.cc/bbs/Database/M.1406686866.A.AA4.html
推
07/30 13:29, , 1F
07/30 13:29, 1F
是這樣的 TableB.Weapon = TableC.WeaponY
小弟是想把指到的順序依序排入TableB.WeaponX
如果是Insert的話會是
Insert Table B(WeaponX)
Select WeaponX From TableC
這是新增資料的結果,小弟想要把它改成Update的寫法寫入
但碰上了瓶頸需要指點,還請先進不吝指教
※ 編輯: shadow0828 (203.67.178.55), 07/30/2014 13:36:15
→
07/30 14:44, , 2F
07/30 14:44, 2F
小弟是要重複寫入的方式
也就是 B(奇數/偶數) = C(奇數/偶數) 的WeaponX值
※ 編輯: shadow0828 (203.67.178.55), 07/30/2014 16:28:34
推
07/30 18:31, , 3F
07/30 18:31, 3F
→
07/30 18:31, , 4F
07/30 18:31, 4F
→
07/30 23:13, , 5F
07/30 23:13, 5F
→
07/30 23:13, , 6F
07/30 23:13, 6F
推
08/03 19:42, , 7F
08/03 19:42, 7F
→
08/07 20:21, , 8F
08/07 20:21, 8F
→
08/07 20:30, , 9F
08/07 20:30, 9F
→
08/20 11:59, , 10F
08/20 11:59, 10F