在做Echarts统计图的时候遇到一个问题,我们做Echarts图很多时候X轴需要显示日期,Y轴要显示对应的数据。
假如表里有个time字段, 我一般想到的是根据时间去分组并查询count的值。但是我经常会遇到一种情况,就是假如我要查询1号到20号的数据量,其中可能会有那么几天没有数据。例如:
什么数据库呢?意思就是需要查询出每一天,然后关联你的查询结果,查询每一天
oracle简单,直接 使用CONNECT BY 就行,根据ROWNUM控制查多少天数据
select date '2023-6-1' +ROWNUM-1 from dual CONNECT BY ROWNUM <=32;
SELECT
date_add(DATE_ADD(curdate(), INTERVAL - DAY(curdate()) + 2 DAY),
INTERVAL (cast( help_topic_id AS signed INTEGER ) - 1 ) DAY
) DAY
FROM
mysql.help_topic
WHERE
help_topic_id < DAY ( last_day( curdate( ) ) )
ORDER BY
help_topic_id
不是什么问题都要靠数据库解决
你循环一下,利用datetime做日期加法,再转字符串,放进map里,再用数据库查询出来的对它进行填充