Mysql
 sql >> Base de données >  >> RDS >> Mysql

Compter combien existent dans une relation un-à-plusieurs

Utilisez une table dérivée comme ceci :

SELECT ...
       TotalTasks --Add the count column to your select
FROM ticket t
JOIN (SELECT ticked_id, COUNT(1) as TotalTasks
      FROM tasks
      GROUP BY ticked_id) ta ON t.id = ta.ticked_id
...rest of query

Voici votre violon avec la requête complète

Le concept ici est de faire votre agrégation sur le plusieurs table, avant de rejoindre une table. Cela garantit une jointure 1-1 et évite au mieux les doublons indésirables.