2
SELECT topic_id
FROM phpbb_topics AS t
WHERE t.topic_id IN (
    SELECT p.topic_id, COUNT(p.post_id) AS total_posts
    FROM phpbb_posts AS p
    WHERE p.poster_id = 61640
    GROUP BY p.topic_id
    HAVING t.topic_replies_real = total_posts - 1
);

そのクエリで次のエラーが発生します。

エラー コード: 1241。オペランドには 1 列を含める必要があります

何か案は?

4

1 に答える 1

3

サブクエリにCOUNT(p.post_id) AS total_postsin list を含めないでください。SELECTただ

SELECT topic_id   
FROM phpbb_topics AS t
WHERE t.topic_id IN (
    SELECT p.topic_id --, COUNT(p.post_id) AS total_posts 
    FROM phpbb_posts AS p
    WHERE p.poster_id = 61640
    GROUP BY p.topic_id
    HAVING t.topic_replies_real = COUNT(p.post_id) - 1
);
于 2012-12-08T19:53:04.253 に答える