问题描述
问题在这篇文章的结尾。
我发现此链接可以生成日期 Generating a series of dates 并对其进行了修改,使其以一定的间隔生成时间:
SET @start_time = "08:02";
SET @stop_time = "17:02";
SELECT
TIME_FORMAT(time(CONCAT(m3,m2,':',m1,m0)),"%H:%i") as Time
FROM
(SELECT 0 m0 UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) AS m0,(SELECT 0 m1 UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6) AS m1,(SELECT 0 m2 UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) AS m2,(SELECT 0 m3 UNION SELECT 1 UNION SELECT 2) AS m3
where time(CONCAT(m3,m0)) is not null
and time(CONCAT(m3,m0)) >= @start_time
and time(CONCAT(m3,m0)) <= @stop_time
order by Time asc
这将生成此表:
Time
10:02
10:03
10:04
10:05
10:06
...
16:59
17:00
17:01
问题?
可以用更有效的方式写吗?我想指定一个带间隔的间隔,以便可以将其快速更新为每隔X分钟的间隔。我不想将结果存储在DB中,我只想即时生成它。因为我将其与其他表一起加入。
我在mysql查询中经常使用它来安排时间序列以方便在Excel中进行绘制。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)