欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL生成日期維度表的sql語句

 更新時(shí)間:2024年07月03日 14:43:39   作者:ronshi  
這篇文章主要介紹了MySQL生成日期維度表的sql語句,通過存儲(chǔ)過程生成,其次是通過遞歸的公用表表達(dá)式生成,需要的朋友可以參考下

MySQL生成日期維度表

1、通過存儲(chǔ)過程生成

DELIMITER $$
CREATE PROCEDURE dateDim(startDate DATE, endDate DATE)  
BEGIN  
    DECLARE currentDate DATE;  
    SET currentDate = startDate;  
    WHILE currentDate <= endDate DO  
        INSERT INTO sys_calendar (stats_day) VALUES (currentDate);  
        SET currentDate = DATE_ADD(currentDate, INTERVAL 1 DAY);  
    END WHILE;  
END $$
DELIMITER ;  
CALL dateDim('2022-01-01', '2030-12-31');

2、通過遞歸的公用表表達(dá)式生成

WITH RECURSIVE date_series AS (  
  SELECT '2023-01-01' AS date_value  
  UNION ALL  
  SELECT DATE_ADD(date_value, INTERVAL 1 DAY)  
  FROM date_series  
  WHERE date_value < '2023-12-31'  
)  
INSERT INTO date_dim (date_value)  
SELECT date_value FROM date_series;

補(bǔ)充:Mysql 快速生成日期時(shí)間維度表

Mysql 快速生成日期時(shí)間維度表

創(chuàng)建表結(jié)構(gòu)

CREATE TABLE `dim_date` (
  `id` int(11) NOT NULL COMMENT '日期鍵 20000101',
  `date` date DEFAULT NULL COMMENT '日期 2000-01-01',
  `year` smallint(6) DEFAULT NULL COMMENT '年 2000',
  `month` smallint(6) DEFAULT NULL COMMENT '月 01',
  `day` smallint(6) DEFAULT NULL COMMENT '日 01',
  `quarter` smallint(6) DEFAULT NULL COMMENT '當(dāng)年所屬季度',
  `year_of_week` smallint(6) DEFAULT NULL COMMENT '當(dāng)前周所屬年份',
  `week` smallint(6) DEFAULT NULL COMMENT '當(dāng)年所屬周',
  `day_of_week` smallint(6) DEFAULT NULL COMMENT '星期幾',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

生產(chǎn)數(shù)據(jù)

SET @d0 = '2000-01-01';
SET @d1 = '2100-12-31';
SET @date = DATE_SUB( @d0, INTERVAL 1 DAY );
INSERT INTO `dim_date`(`date`, `id`,  `year`, `month`, `day`, `quarter`, `year_of_week`, `week`, `day_of_week`) 
SELECT
@date := DATE_ADD( @date, INTERVAL 1 DAY ) AS DATE,
DATE_FORMAT( @date, '%Y%m%d' ) AS id,
YEAR ( @date ) AS Y,
MONTH ( @date ) AS m,
DAY ( @date ) AS d,
QUARTER ( @date ) AS q,
DATE_FORMAT( @date, '%x' ) AS yw,
WEEK ( @date, 3 ) AS w,
WEEKDAY( @date ) + 1 AS wd
FROM
	[某張行數(shù)比日期差大的表]
WHERE
	DATE_ADD( @date, INTERVAL 1 DAY ) <= @d1 
ORDER BY
	DATE;

到此這篇關(guān)于MySQL生成日期維度表的文章就介紹到這了,更多相關(guān)MySQL日期維度表內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SQLyog錯(cuò)誤號(hào)碼MySQL?plugin?caching_sha2_password?could?not?be?loaded的解決方法

    SQLyog錯(cuò)誤號(hào)碼MySQL?plugin?caching_sha2_password?could?not?

    這篇文章主要介紹了SQLyog錯(cuò)誤號(hào)碼?plugin?caching_sha2_password?could?not?be?loaded的解決方法,需要的朋友可以參考下
    2023-06-06
  • 解析SQLite中的常見問題與總結(jié)詳解

    解析SQLite中的常見問題與總結(jié)詳解

    本篇文章是對(duì)SQLite中的常見問題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • mysql臨時(shí)表插入數(shù)據(jù)方式

    mysql臨時(shí)表插入數(shù)據(jù)方式

    這篇文章主要介紹了mysql臨時(shí)表插入數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • django2.2版本連接mysql數(shù)據(jù)庫的方法

    django2.2版本連接mysql數(shù)據(jù)庫的方法

    這篇文章主要介紹了django2.2版本如何連接mysql數(shù)據(jù)庫,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10
  • MySQL如何為字段添加默認(rèn)時(shí)間淺析

    MySQL如何為字段添加默認(rèn)時(shí)間淺析

    這篇文章主要給大家介紹了關(guān)于MySQL如何為字段添加默認(rèn)時(shí)間的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 如何搭建 MySQL 高可用高性能集群

    如何搭建 MySQL 高可用高性能集群

    MySQL 作為小型應(yīng)用的數(shù)據(jù)庫,它完全可以勝任,但是如果是大型應(yīng)用,高性能高可用的要求,單服務(wù)器部署的MySQL就不夠了。MySQL NDB Cluster為這個(gè)需求提供了一個(gè)官方的集群解決方案。本文將研究如何搭建 MySQL 高可用高性能集群
    2021-06-06
  • mysql索引學(xué)習(xí)教程

    mysql索引學(xué)習(xí)教程

    在mysql 中,索引可以分為兩種類型 hash索引和 btree索引。這篇文章主要介紹了mysql索引的相關(guān)知識(shí),非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2016-09-09
  • 淺談Mysql?tinyint(1)與tinyint(4)的區(qū)別

    淺談Mysql?tinyint(1)與tinyint(4)的區(qū)別

    本文主要介紹了淺談Mysql?tinyint(1)與tinyint(4)的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • MySQL創(chuàng)建數(shù)據(jù)表時(shí)設(shè)定引擎MyISAM/InnoDB操作

    MySQL創(chuàng)建數(shù)據(jù)表時(shí)設(shè)定引擎MyISAM/InnoDB操作

    這篇文章主要介紹了MySQL創(chuàng)建數(shù)據(jù)表時(shí)設(shè)定引擎MyISAM/InnoDB操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • 在Windows系統(tǒng)上使用壓縮歸檔文件安裝MySQL的步驟

    在Windows系統(tǒng)上使用壓縮歸檔文件安裝MySQL的步驟

    這篇文章主要介紹了在Windows系統(tǒng)上使用壓縮歸檔文件安裝MySQL的步驟,非常不錯(cuò),具有一定的參考借鑒加載,需要的朋友可以參考下
    2018-06-06

最新評(píng)論