今天遇到一個需求是生成以下表格的數據,一整天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