MySQL - Operando deve conter 1 coluna (s)

Enquanto trabalhava em um sistema que estou criando, tentei usar a seguinte consulta no meu projeto:

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" é vinculado pelo meu código PHP como estou usando o PDO. 2 é um valor válido para ": cat".

Essa consulta, no entanto, me dá um erro: "# 1241 - Operando deve conter 1 coluna (s)"

O que me incomoda é que eu pensaria que essa consulta não funcionaria. Selecionando colunas, depois selecionando mais duas de outra tabela e continuando a partir daí. Eu simplesmente não consigo descobrir qual é o problema.

Existe uma solução simples para isso ou outra maneira de escrever minha consulta?

questionAnswers(5)

yourAnswerToTheQuestion