USE [DataDB]
GO
/****** Script Date: 2021/6/11 10:43:15 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROC [dbo].[PROC_DIMDATE]
AS
BEGIN
DECLARE @i int;
DECLARE @begin_date varchar(20);
DECLARE @end_date varchar(20);
DECLARE @date_count int;
set @i=0;
set @begin_date='2019-01-01';
set @end_date='2022-12-31';
DELETE FROM [dbo].[DimDate];
SET @DATE_COUNT = DATEDIFF(DD,@begin_date,@end_date);
WHILE @i < @DATE_COUNT
BEGIN
INSERT INTO [DimDate] (FullDate,DateKey,YearKey,YearName,QuarterKey,QuaterName,MonthKey,MonthName,DayOfMonth,DayOfYear)
SELECT
-------------------------------------FullDate----------------------------------------------------
CONVERT(VARCHAR(10),@begin_date,120) FullDate,
-------------------------------------DateKey----------------------------------------------------
CASE WHEN
CONVERT(VARCHAR(2),DATEPART(MM, @begin_date),120) >=10
AND
CONVERT(VARCHAR(2),DATENAME(DD, @begin_date
日期维度表
最新推荐文章于 2022-05-30 10:32:27 发布
本文介绍了如何在SQL Server中创建和使用日期维度表,该表对于数据分析和报告非常有用。通过构建包含完整日期范围的表,可以方便地进行日期相关的查询和统计,提高查询效率。
摘要由CSDN通过智能技术生成