作成中のシステムで作業しているときに、プロジェクトで次のクエリを使用しようとしました。
SELECT
topics.id,
topics.name,
topics.post_count,
topics.view_count,
COUNT( posts.solved_post ) AS solved_post,
(SELECT users.username AS posted_by,
users.id AS posted_by_id
FROM users
WHERE users.id = posts.posted_by)
FROM topics
LEFT OUTER JOIN posts ON posts.topic_id = topics.id
WHERE topics.cat_id = :cat
GROUP BY topics.id
":cat" は、PDO を使用しているため、PHP コードによってバインドされています。2 は ":cat" の有効な値です。
ただし、そのクエリではエラーが発生します。「#1241 - オペランドには 1 列を含める必要があります」
私を悩ませているのは、このクエリは問題なく機能すると思うということです。列を選択してから、別のテーブルからさらに 2 つ選択し、そこから続行します。何が問題なのかわかりません。
これに対する簡単な修正、またはクエリを作成する別の方法はありますか?