sql >> Databáze >  >> RDS >> Mysql

MySQL Sum sloupec IF ID je v jiném dotazu tabulky

Myslím, že toto je poměrně jednoduché spojení, součet a seskupení podle:

  SELECT t.r_id, SUM(t.work) work_sum
    FROM tasks t
    JOIN info i
      ON i.id = t.r_id
     AND i.date BETWEEN xxx AND yyy
GROUP BY t.r_id

Pokud chcete null work_sum pro úkoly bez informací v tomto rozsahu:

   SELECT t.r_id, SUM(t.work) work_sum
     FROM tasks t
LEFT JOIN info i
       ON i.id = t.r_id
      AND i.date BETWEEN xxx AND yyy
 GROUP BY t.r_id

Pokud chcete 0 work_sum pro úkoly bez informací v tomto rozsahu:

   SELECT t.r_id, COALESCE(SUM(t.work),0) work_sum
     FROM tasks t
LEFT JOIN info i
       ON i.id = t.r_id
      AND i.date BETWEEN xxx AND yyy
 GROUP BY t.r_id



  1. Jak získat nadřazenou tabulku, referenční tabulku, název omezení cizího klíče a sloupce v SQL Server - SQL Server / Výukový program TSQL, část 71

  2. Tabulky a indexy vs. HDD a SSD

  3. Nelze se připojit k MySQL pomocí Sequelize

  4. Část 2 – Jak uspořádat velký databázový diagram