我正在升级和优化旧的表结构.
为了正确使用替换,我删除了干扰2列新唯一密钥的旧僵尸条目.
查询:
DELETE from `relProductsPrices` where `ID` in (SELECT scanA.ID from `relProductsPrices` as scanA inner join `relProductsPrices` as scanB where scanA.ID < scanB.ID and scanA.product = scanB.product and scanA.pricename = scanB.pricename);
错误:
#1093 - You can't specify target table 'relProductsPrices' for update in FROM clause
我不确定如何正确地将它放入一个mySQL查询中?
我希望这个问题没有重复的条目,我似乎无法找到类似的,适应性的条目.有关于此错误的问题,但我在这里根本没有更新查询,大多数人所说的解决方案(创建一个子选择)已经事先由我完成了.
提前致谢!
最佳答案@H_403_29@试试这个:DELETE FROM `relProductsPrices` WHERE `ID` IN ( SELECT tmp.ID FROM ( SELECT scanA.ID FROM `relProductsPrices` as scanA INNER JOIN `relProductsPrices` as scanB ON scanA.ID < scanB.ID AND scanA.product = scanB.product AND scanA.pricename = scanB.pricename ) as tmp );
总结 以上是内存溢出为你收集整理的mysql – 错误#1093 – 您无法在FROM子句中为更新指定目标表’relProductsPrices’全部内容,希望文章能够帮你解决mysql – 错误#1093 – 您无法在FROM子句中为更新指定目标表’relProductsPrices’所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)