postgreSQL select起作用,但delete不起作用

postgreSQL select起作用,但delete不起作用,sql,postgresql,Sql,Postgresql,我试图将以下查询更改为删除返回行的查询 SELECT bad_rows.* FROM votes as bad_rows INNER JOIN( SELECT MIN(id) as min_id, votes.object_id, votes.user_id FROM votes WHERE is_archived=FALSE AND votes.direction < 20 GROUP BY votes.object_id, votes.user_id, vot

我试图将以下查询更改为删除返回行的查询

SELECT bad_rows.*
FROM votes as bad_rows
INNER JOIN(
    SELECT  MIN(id) as min_id, votes.object_id, votes.user_id 
FROM votes WHERE is_archived=FALSE AND 
     votes.direction < 20 
GROUP BY votes.object_id, votes.user_id, votes.content_type_id
having COUNT(votes.object_id) > 1
) AS double_rows ON 
    double_rows.object_id = bad_rows.object_id 
    AND double_rows.user_id=bad_rows.user_id 
    AND bad_rows.is_archived=False
    AND double_rows.min_id <> bad_rows.id
此选择有效,并提供要删除的行。现在,如果我将select更改为delete,我的查询将不起作用

DELETE bad_rows.*
FROM votes as bad_rows
INNER JOIN(
    SELECT  MIN(id) as min_id, votes.object_id, votes.user_id 
FROM votes WHERE is_archived=FALSE AND 
     votes.direction < 20 
GROUP BY votes.object_id, votes.user_id, votes.content_type_id
having COUNT(votes.object_id) > 1
) AS double_rows ON 
    double_rows.object_id = bad_rows.object_id 
    AND double_rows.user_id=bad_rows.user_id 
    AND bad_rows.is_archived=False
    AND double_rows.min_id <> bad_rows.id
错误:错误行处或附近出现语法错误
第1行:删除坏行。*

不能指定列来删除坏行中的*。*

此外,大多数数据库不允许您指定要删除的别名。因此,通常的删除方法如下:

DELETE  VOTES
WHERE   ID IN
        (
        <subquery selecting the ID's of the rows you want to delete>
        )

根据安多马尔的建议,我让它起作用了

DELETE FROM votes WHERE id IN (
SELECT bad_rows.id
FROM votes as bad_rows
INNER JOIN(
SELECT  MIN(id) as min_id, votes.object_id, votes.user_id 
FROM votes where is_archived=FALSE and votes.direction < 20 

GROUP BY votes.object_id, votes.user_id, votes.content_type_id
having COUNT(votes.object_id) > 1
) as double_rows on double_rows.object_id = bad_rows.object_id and double_rows.user_id=bad_rows.user_id and bad_rows.is_archived=False
    and double_rows.min_id <> bad_rows.id
)