[SQL ] UPDATE同欄位但是判斷不同的條件
資料庫名稱:SQLite
資料庫版本:null
內容/問題描述:
我有個資料是如圖1
http://i.imgur.com/TUMiQtL.png
在這邊我想使用一行指令update多筆row的資料
在這邊假設我只update一筆資料
在這邊參考此篇的寫法http://goo.gl/sz4l09
我想要UPDATE pid='B'且spec='L'的number數量改為999
http://i.imgur.com/J4oTOZU.png
--------SQL指令------------
UPDATE test
SET `number` = (case when pid='B' and spec='L' then 999
END)
WHERE pid in ('A','B') AND
spec in ('S','M','L','XL');
---------------------------
但是使用此寫法後除了該筆資料number欄位改為999,
其餘row的number欄位皆變為null 可是其他的我想讓它保持原來的數值不要去改變它
http://i.imgur.com/3XQkagm.png
請問能怎麼做呢? 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 115.43.23.4
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1442815147.A.65A.html
※ 編輯: dwadefans (115.43.23.4), 09/21/2015 13:59:31
→
09/21 14:27, , 1F
09/21 14:27, 1F
→
09/21 14:32, , 2F
09/21 14:32, 2F
→
09/21 14:33, , 3F
09/21 14:33, 3F
→
09/21 16:33, , 4F
09/21 16:33, 4F
→
09/21 23:52, , 5F
09/21 23:52, 5F