1
我有兩個實體的股票(名稱,數量)和PC_SYSTEMS(名稱,c_name),我希望更新創建PC_system的「Alienware」所需要的組件,因此我希望它從減去1股票中創建外部軟件系統所需的組件數量。錯誤更新詢問
這裏是我的查詢:
"UPDATE stock SET amount=amount-1 WHERE name = (SELECT p.c_name FROM pc_systems p WHERE p.name='Alienware');"
我得到一個奇怪的錯誤,上面寫着:
「被用作表達式子查詢返回多行」將是,如果有人高興有幫助。
編輯:
我通過把一個 「IN」 我的查詢,而不是 「=」 解決了這個。最終代碼:
UPDATE stock SET amount=amount-1 WHERE name IN (SELECT p.c_name FROM pc_systems p WHERE p.name='Alienware');
我想這一點,但它說那個關係'不'存在。這看起來不像標準表示法tho,通常就像更新
我剛更新了我的答案與另一個版本 – Taryn 2012-03-22 18:17:18
得到了錯誤「列參考」金額「不明確 線2:設置金額=量-1" 。試圖找出可能的錯誤。 – John 2012-03-22 18:29:28
這意味着這是什麼SQL返回超過1行。使它只返回1行。
來源
2012-03-22 17:55:48
這不會更新需要在股票的Alienware成分的量,但我明白你的意思 – John 2012-03-22 18:07:03
相關問題