MySQL学习笔记:生成一个时间序列

  今天遇到一个需求是生成以下表格的数据,一整天24小时,每秒一行数据。

  

  寻找颇旧,找到另外两个实现的例子,暂且学习一翻。另一个见另外一篇。

SELECT DATE_ADD('2018-01-01',INTERVAL @i := @i + 1 DAY) AS DATE
FROM
(SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1) AS tmp,
(SELECT @i := -1) t;

  其中,SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1是为了生成一个虚拟的表格,这样子可以生成一样多的行数,此次可用T表代替,只需满足T表数据量大于所需即可。

SELECT DATE_ADD('2018-01-01',INTERVAL @i := @i + 1 DAY) AS DATE
FROM
    T
(SELECT @i := -1) t;

END 2018-05-29 00:55:32

posted @   Hider1214  阅读(2889)  评论(0编辑  收藏  举报
编辑推荐:
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示