sql >> Database teknologi >  >> RDS >> Mysql

MySQL - Operand skal indeholde 1 kolonne(r)

Din underforespørgsel vælger to kolonner, mens du bruger den til at projicere en kolonne (som en del af den ydre SELECT klausul). Du kan kun vælge én kolonne fra en sådan forespørgsel i denne sammenhæng.

Overvej at blive medlem af users bord i stedet for; dette vil give dig mere fleksibilitet, når du vælger hvilke kolonner du ønsker fra 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


  1. Hvordan OPDATERE en kolonne ved hjælp af en anden kolonne i en anden tabel? SQL-fejl:ORA-00933:SQL-kommando blev ikke afsluttet korrekt

  2. ScyllaDB-trends – Sådan implementerer brugere The Real-Time Big Data-database

  3. Brug af Count til at finde antallet af forekomster

  4. Kan en sql-servertabel have to identitetskolonner?