我知道这个论点已经在本网站多次讨论过,我只是找不到一个可行的解决方案,所以我想我会发布我的具体案例给你,也许你可以帮助我...无法从子查询中的同一表中删除
我有一个节日,我需要消除比前一天晚上的平均评价低20%的歌曲。
我这个尝试:
DELETE FROM concorre AS C
WHERE C.dataSer='2014-02-24'
AND C.votoTot<(SELECT AVG(B.votoTot)
FROM concorre AS B
WHERE B.dataSer='2014-02-23')/5
它解决了 “同桌的问题”,但还是给我一个错误:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS C WHERE C.dataSer='2014-02-24' AND C.votoTot<(SELECT AVG(votoTot) FROM concor' at line 1
当你的子查询将返回所有条目的相同值有你使用参数认为,这将删除有关子查询的错误,并可能提高性能。 – talegna
当命名表时,你不应该使用'AS'。多数民众赞成在当你命名列可以使用'AS' –