Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Conte quantos existem em um relacionamento um-para-muitos


Use uma tabela derivada assim:
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

Aqui está o seu violino com toda a consulta

O conceito aqui é fazer sua agregação nos muitos tabela, antes de voltar para a uma tabela. Isso garante uma junção 1-1 e evita duplicações indesejadas.