我有这样一张桌子: -
Product ID Weight A 100 B 100 C 100 D 100 E 100
我想把它改成: -
Product ID Weight A 501 B 601 C 701 D 801 E 401
我怎么能用SQL更新命令呢?
小智 8
像这样使用Case表达式
UPDATE products SET
Weight =
CASE ProductID
WHEN 'A' THEN 501
WHEN 'B' THEN 601
WHEN 'C' THEN 701
WHEN 'D' THEN 801
WHEN 'E' THEN 401
END
WHERE ProductID in ('A', 'B', 'C', 'D', 'E')
Run Code Online (Sandbox Code Playgroud)
如果没有WHERE子句,表中的每一行都将被测试(不必要的,因为它们永远不会匹配).
更多信息:CASE(Transact-SQL),Case Oracle,Case MySQL