MySQL批量更新不同值的语句
是否有与这些等效的单个 SQL 语句?
UPDATE table_name SET (a = 'something', b='B1') WHERE id=1;
UPDATE table_name SET (a = 'something else', b='B2') WHERE id=2;
UPDATE table_name SET (a = 'another', b='B3') WHERE id=3;
Is there any single SQL statement equivalent to these?
UPDATE table_name SET (a = 'something', b='B1') WHERE id=1;
UPDATE table_name SET (a = 'something else', b='B2') WHERE id=2;
UPDATE table_name SET (a = 'another', b='B3') WHERE id=3;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
是的,这个:
但我不确定这是否是你想要的?
Yes, this:
but I'm not sure if it's what you have in mind?
如果要插入更大的数据数组,那么您可以使用
ON DUPLICATE KEY UPDATE
构造。它在 MySQL 中的工作效率会更高。有关类似问题的使用示例,请参阅我的回答。
If you have bigger array of data to be inserted, then you may use
ON DUPLICATE KEY UPDATE
construction. It will work more efficient in MySQL.See my answer here for the similar question, for the example of usage.
您可以使用具有常量值的选择行,然后将其与表连接。
请参阅如何选择填充常量的多行?
You can use select rows with your constant value, then join it with you table.
Refer to How to select multiple rows filled with constants?