1. 程式人生 > 其它 >在SQL中建立時間維度表

在SQL中建立時間維度表

技術標籤:資料分析sql學習mysqlsql資料庫

這是一道資料分析的筆試題:
用sql語句生成一張從2020年1月1日至今日的日期表。

同時也這是考察在SQL中建立時間維度表。

這裡採用迴圈的方式:

先建立一個表格,只有日期欄位,欄位型別為date

create table ab_date(date date);

建立一個PROCEDURE:
從2020年1月1日開始迴圈加1天,知道今天。

DELIMITER $$
CREATE PROCEDURE create_date ()
BEGIN
	declare indexdate Date;
    set indexdate=date("2020-01-01"
); while indexdate <= curdate() do insert into ab_date(date) values (indexdate); set indexdate = adddate(indexdate,1); end while; END;

呼叫PROCEDURE

call create_date();

效果:
在這裡插入圖片描述
在這裡插入圖片描述