mysql–SQL UPDATE或DELETE如果重复

mysql–SQL UPDATE或DELETE如果重复,第1张

概述我正在尝试在我的数据库中运行3个查询:UPDATE `table` SET `rubriq` = '77' WHERE `rubriq` = '61'; UPDATE `table` SET `rubriq` = '77' WHERE `rubriq` = '62'; UPDATE `table` SET `rubriq` = '77' WHERE `rub

我正在尝试在我的数据库中运行3个查询:

UPDATE `table` SET `rubriq` = '77' WHERE `rubriq` = '61';UPDATE `table` SET `rubriq` = '77' WHERE `rubriq` = '62';UPDATE `table` SET `rubriq` = '77' WHERE `rubriq` = '63';

在表格中我有两列abonne和rubriq. Abonne是主键,两个是索引.

如果在我的数据库中我有例如:

 abonne  | rubriq    84     |   61    84     |   62   84     |   63

当我运行我的3个查询时,第一个没有问题但是对于第二个,我有一个错误:#1062 – 重复条目’84 -77’为密钥1

如何运行这3个查询但是,当出现这样的错误时,只需删除该行?

谢谢 !

最佳答案您必须手动删除会导致冲突的记录:

UPDATE `table` SET rubriq = 77 WHERE rubriq = 61;DELETE t62FROM   `table` t77  JOIN `table` t62 USING (abonne)WHERE  t77.rubriq = 77   AND t62.rubriq = 62;UPDATE `table` SET rubriq = 77 WHERE rubriq = 62;DELETE t63FROM   `table` t77  JOIN `table` t63 USING (abonne)WHERE  t77.rubriq = 77   AND t63.rubriq = 63;UPDATE `table` SET rubriq = 77 WHERE rubriq = 63;
总结

以上是内存溢出为你收集整理的mysql – SQL UPDATE或DELETE如果重复全部内容,希望文章能够帮你解决mysql – SQL UPDATE或DELETE如果重复所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1168846.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存