Chci VYBRAT z mého stolu posledních 30 denní záznamy. Můj dotaz vypadá takto:
SELECT DATE(o_date) as date, count(id) AS sum FROM customers WHERE o_date BETWEEN DATE_SUB(CURDATE(), INTERVAL 30 DAY) AND NOW() GROUP BY o_date
Nebo toto:
SELECT DATE(o_date) AS date, COUNT(id) AS sum FROM customers WHERE o_date >= DATE(NOW()) + INTERVAL -30 DAY GROUP BY DATE(o_date)
Chci vytvořit seznam s daty a počet id-s.
Ale tam, kde jsem dont mít žádné záznamy v přesný den, dotaz jen přeskočit to datum. Ale chci vložit tam nula.
Příklad:
id | o_date |
---|---|
1 | 2021-11-23 |
2 | 2021-11-22 |
3 | 2021-11-20 |
4 | 2021-11-20 |
5 | 2021-11-19 |
6 | 2021-11-18 |
7 | 2021-11-18 |
Výsledek bude tento:
datum | součet |
---|---|
2021-11-23 | 1 |
2021-11-22 | 1 |
2021-11-20 | 2 |
2021-11-19 | 1 |
2021-11-18 | 2 |
Ale tam, kde jsem dont mít záznamy, jako v tomto příkladu v 2021-11-21 jak mohu vložit na součet 0?
Děkuji!!!
AKTUALIZACE: Potřebuji tento dotaz pro MariaDB.