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

Spojování chybějících dat z kalendářové tabulky

Potřebujete left join spíše než right join nebo můžete také změnit pozici tabulek

SELECT sum(steps), date(from_unixtime(td.db_date)) as stepdate
FROM time_dimension td  
LEFT JOIN userdata u
     ON date(from_unixtime(u.in_date)) = td.db_date 
WHERE user_id = 8
GROUP BY date(from_unixtime(td.db_date))
ORDER BY stepdate DESC;

To však předpokládá time_dimension stůl považován za kalendářový stůl.




  1. Vytvořte tabulku v postupu

  2. WhoIsActive Runner

  3. Rozdělení řetězce do více řádků v Oracle

  4. Jak zacházet s časovým pásmem MySQL ve skriptu