我有一张这样的 table
USER | DATA
----------------
User1 | 123
User1 | 456
User2 | 456
User3 | 123
User4 | 789
并且我对用户数据有一个 UNIQUE 约束。现在我想用“123”替换所有“456”,所以最后我会
USER | DATA
----------------
User1 | 123
User2 | 123
User3 | 123
User4 | 789
我真的认为这很容易,你知道如何进行吗?任何帮助将不胜感激 =)
谢谢
最佳答案
“使用 IGNORE 关键字,即使在更新期间发生错误,更新语句也不会中止。不会更新发生重复键冲突的行”
所以, 更新任何不会违反唯一约束的行。 如果有任何行,只需删除它们
UPDATE IGNORE Table SET data=123 WHERE data=456
DELETE FROM Table WHERE data=456
关于mysql更新查询,合并两个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6293411/