我想获取一个日期范围的数据,在这个日期范围内,有些日期在表中没有任何日期。查询结果没有显示这些日期的任何内容,如下所示,从2023-07-14开始的日期没有数据。
查询
select count(*),to_date(date_column) as cdate from table where to_date(date_column) > '2023-07-11' group by 2 order by 2;
+----------+----------------------------+
| count(*) | cdate |
+----------+----------------------------+
| 413 | 2023-07-12 |
| 316 | 2023-07-13 |
| 400 | 2023-08-11 |
| 302 | 2023-08-12 |
| 325 | 2023-08-13 |
| 13 | 2023-08-14 |
| 767 | 2023-08-15 |
+----------+----------------------------+
我想得到的结果在低于预期的格式。
+----------+----------------------------+
| count(*) | cdate |
+----------+----------------------------+
| 413 | 2023-07-12 |
| 316 | 2023-07-13 |
| 0 | 2023-07-14 |
| 0 | 2023-07-15 |
| 0 | 2023-07-16 |
| 0 | 2023-07-17 |
| 0 | 2023-07-18 |
+----------+----------------------------+
如果日期没有数据,则返回0作为计数值。
1条答案
按热度按时间k0pti3hp1#
请使用
sum()
为该条件-