este problema se puede abordar de diversas maneras, pero te dejamos la respuesta más completa para nosotros.
Solución:
Su subconsulta está seleccionando dos columnas, mientras que la está utilizando para proyectar una columna (como parte del exterior SELECT
cláusula). Solo puede seleccionar una columna de dicha consulta en este contexto.
Considere unirse a la users
mesa en su lugar; esto le dará más flexibilidad al seleccionar de qué columnas desea users
.
SELECT
topics.id,
topics.name,
topics.post_count,
topics.view_count,
COUNT( posts.solved_post ) AS solved_post,
users.username AS posted_by,
users.id AS posted_by_id
FROM topics
LEFT OUTER JOIN posts ON posts.topic_id = topics.id
LEFT OUTER JOIN users ON users.id = posts.posted_by
WHERE topics.cat_id = :cat
GROUP BY topics.id
Este error también puede ocurrir si accidentalmente usa comas en lugar de AND
en el ON
cláusula de un JOIN
:
JOIN joined_table ON (joined_table.column = table.column, joined_table.column2 = table.column2)
^
should be AND, not a comma
Este error también puede ocurrir si usa accidentalmente =
en lugar de IN
en el WHERE
cláusula:
POR EJEMPLO:
WHERE product_id = (1,2,3);
Reseñas y puntuaciones
Si te animas, eres capaz de dejar una división acerca de qué te ha parecido esta división.