我有以下用于 MySQL 的更新语句:
UPDATE billing_info_test SET Enagement = '800000032764' WHERE LinkedAccountId = '123456789101' AND Engagement = '800000026680';
UPDATE billing_info_test SET Enagement = '808000000000' WHERE LinkedAccountId = '123456789101' AND Engagement = '807000000041';
UPDATE billing_info_test SET Enagement = '807000000412' WHERE LinkedAccountId = '123456789101' AND Engagement = '870000012569';
UPDATE billing_info_test SET Enagement = '808000000223' WHERE LinkedAccountId = '123456789101' AND Engagement = '807000000279';
UPDATE billing_info_test SET Enagement = '808000000223' WHERE LinkedAccountId = '123456789101' AND Engagement = '807000000282';
UPDATE billing_info_test SET Enagement = '808000000223' WHERE LinkedAccountId = '123456789101' AND Engagement = '870000000403';
如何将所有这些组合成一个语句?
最佳答案
你可以使用 CASE
表达式:
UPDATE billing_info_test
SET Enagement = CASE Enagement
WHEN '800000026680' THEN '800000032764'
WHEN '807000000041' THEN '808000000000'
WHEN ... THEN ...
END
WHERE LinkedAccountId = '123456789101'
AND Engagement IN ('800000026680', '807000000041', ...);
关于mysql - 将多条sql更新语句合并为一条语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56762065/