1093 - You can't specify target table 'account' for update in FROM clause

 

目的:查询一张表的相同的两条数据,并删除一条数据。

分析 先查询出相同的数据,然后删除

查询相同的数据 

SELECT a.id FROM account a GROUP BY a.username HAVING COUNT(a.username)>1;

 

DELETE FROM account WHERE id = (SELECT a.id FROM account a GROUP BY a.username HAVING COUNT(a.username)>1) ;

1093 - You can't specify target table 'account' for update in FROM clause

不能为FROM子句中的更新指定目标表'account'。

 

修改后:

DELETE FROM account WHERE id = 

(SELECT t.id from

(SELECT a.id FROM account a GROUP BY a.username HAVING COUNT(a.username)>1) t
);

相关文章:

  • 2022-12-23
  • 2021-12-30
  • 2022-01-12
  • 2021-05-20
  • 2021-10-24
  • 2021-09-12
  • 2022-12-23
猜你喜欢
  • 2021-06-28
  • 2022-01-19
  • 2022-01-08
  • 2022-12-23
  • 2022-12-23
  • 2021-08-23
  • 2022-12-23
相关资源
相似解决方案