mysql sql语句生成日历表
生活随笔
收集整理的這篇文章主要介紹了
mysql sql语句生成日历表
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉載:http://blog.csdn.net/u010363836/article/details/52788358
mysql sql語句生成日歷點擊打開鏈接表 ?(主要用于按月,按天group by分組統計時,有些日期沒有記錄,需要補0)
從自定義的開始時間,生成1萬條記錄
CREATE TABLE if not exists num (i int);-- 創建一個表用來儲存0-9的數字 INSERT INTO num (i) VALUES (0), (1), (2), (3), (4), (5), (6), (7), (8), (9);-- 生成0-9的數字,方便以后計算時間CREATE TABLE if not exists calendar(datelist date); -- 生成一個存儲日期的表,datalist是字段名-- 這里是生成并插入日期數據 INSERT INTO calendar(datelist) SELECTadddate(( -- 這里的起始日期,你可以換成當前日期DATE_FORMAT("2010-1-1", '%Y-%m-%d') ),numlist.id) AS `date` FROM(SELECTn1.i + n10.i * 10 + n100.i * 100 + n1000.i * 1000 AS idFROMnum n1CROSS JOIN num AS n10CROSS JOIN num AS n100CROSS JOIN num AS n1000) AS numlist; 從自定義的開始時間,生成10萬條記錄 CREATE TABLE num (i int);-- 創建一個表用來儲存0-9的數字 INSERT INTO num (i) VALUES (0), (1), (2), (3), (4), (5), (6), (7), (8), (9);-- 生成0-9的數字,方便以后計算時間CREATE TABLE if not exists calendar(datelist date); -- 生成一個存儲日期的表,datalist是字段名-- 這里是生成并插入日期數據 INSERT INTO calendar(datelist) SELECTadddate(( -- 這里的起始日期,你可以換成當前日期DATE_FORMAT("2016-1-1", '%Y-%m-%d') ),numlist.id) AS `date` FROM(SELECTn1.i + n10.i * 10 + n100.i * 100 + n1000.i * 1000+ n10000.i * 10000 AS idFROMnum n1CROSS JOIN num AS n10CROSS JOIN num AS n100CROSS JOIN num AS n1000CROSS JOIN num AS n10000) AS numlist;總結
以上是生活随笔為你收集整理的mysql sql语句生成日历表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 联想G50-75M 拆解(含视频链接),
- 下一篇: linux cmake编译源码,linu