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

Tæl hvor mange der findes i et en-til-mange forhold

Brug en afledt tabel som sådan:

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

Her er din violin med hele forespørgslen

Konceptet her er at lave din aggregering på mange tabellen, før du slutter dig tilbage til en bord. Dette sikrer en 1-1 join og forhindrer bedst muligt uønsket duplikering.



  1. MySQL/PHP output array gentager forespørgslen og viser derefter resultatet, hvordan kan jeg fjerne forespørgslen?

  2. Overførsel af et array fra PHP til Javascript ved hjælp af JQuery &JSON

  3. Problem med MySql INSERT MAX()+1

  4. Arbejder med INTERVAL og CURDATE i MySQL