Reputation: 418
How can I do this:
UPDATE `TEST_TABLE` SET `C1` = 'VALUE_FOR_ID1' WHERE `ID` = 1;
UPDATE `TEST_TABLE` SET `C1` = 'VALUE_FOR_ID2' WHERE `ID` = 2;
UPDATE `TEST_TABLE` SET `C1` = 'VALUE_FOR_ID3' WHERE `ID` = 3;
With a single query with a matching (something like this):
UPDATE `TEST_TABLE` SET `C1` = ('VALUE_FOR_ID1','VALUE_FOR_ID2','VALUE_FOR_ID3') WHERE `ID` IN (1,2,3);
Upvotes: 2
Views: 72
Reputation: 1000
You should be able to do this using CASE:
UPDATE TEST_TABLE SET C1 =
CASE
WHEN ID = 1 THEN 'VALUE_FOR_ID1'
WHEN ID = 2 THEN 'VALUE_FOR_ID2'
WHEN ID = 3 THEN 'VALUE_FOR_ID3'
END
WHERE ID IN (1,2,3)
Upvotes: 1