MySQL数据库中删除 除id以外其他都相同的行,语句如下:
DELETE FROM exam WHERE id NOT IN (SELECT id FROM exam GROUP BY name
,kecheng,fenshu);
报错:
You can’t specify target table ‘exam’ for update in FROM clause(不能先select出同一表中的某些值,再update这个表(在同一语句中))
解决办法:
DELETE FROM exam WHERE id NOT IN (SELECT e.id FROM (SELECT * FROM exam GROUP BY name
,kecheng,fenshu) e);
感觉这样性能会下降。。。