zoukankan      html  css  js  c++  java
  • 生成MSSQL数据库日历

    CREATE TABLE [dbo].[time_dimension4] (
       [time_id] [int] IDENTITY (1, 1) NOT NULL ,
       [the_date] [datetime] NULL ,
       [the_day] [nvarchar] (15) NULL ,
       [the_month] [nvarchar] (15) NULL ,
       [the_year] [smallint] NULL ,
       [day_of_month] [smallint] NULL ,
       [week_of_year] [smallint] NULL ,
       [month_of_year] [smallint] NULL ,
       [quarter] [nvarchar] (2) NULL ,
       [fiscal_period] [nvarchar] (20) NULL
    ) ON [PRIMARY]

     
    DECLARE @WeekString varchar(12),
    @dDate SMALLDATETIME,
    @sMonth varchar(20),
    @iYear smallint,
    @iDayOfMonth smallint,
    @iWeekOfYear smallint,
    @iMonthOfYear smallint,
    @sQuarter varchar(2),
    @sSQL varchar(100),
    @adddays int
     
    SELECT @adddays = 1 --日期增量(可以自由设定)
    SELECT @dDate = '01/01/2005' --开始日期
     
    WHILE @dDate < '12/31/2009'  --结束日期
    BEGIN
     
       SELECT @WeekString = DATENAME (dw, @dDate)
       SELECT @sMonth=DATENAME(mm,@dDate)
       SELECT @iYear= DATENAME (yy, @dDate)
       SELECT @iDayOfMonth=DATENAME (dd, @dDate)
       SELECT @iWeekOfYear= DATENAME (week, @dDate)
       SELECT @iMonthOfYear=DATEPART(month, @dDate)
       SELECT @sQuarter = 'Q' +  CAST(DATENAME (quarter, @dDate)as varchar(1))

       INSERT INTO time_dimension4(the_date, the_day, the_month, the_year,
       day_of_month,
       week_of_year, month_of_year, quarter) VALUES
       (@dDate, @WeekString, @sMonth, @iYear, @iDayOfMonth, @iWeekOfYear,
       @iMonthOfYear, @sQuarter)
       SELECT @dDate = @dDate + @adddays
    END
    GO

    select * from time_dimension

  • 相关阅读:
    Random 种子问题
    Matrix issue
    Two sum.
    Best Time to Buy and Sell Stock
    Maximum difference between two elements
    二分查找法的实现和应用汇总
    Why you want to be restrictive with shrink of database files [From karaszi]
    Palindrome
    NetBeans vs Eclipse 之性能参数对比 [java060515]
    国内各大互联网公司相关技术站点不完全收录[转]
  • 原文地址:https://www.cnblogs.com/fengju/p/6174040.html
Copyright © 2011-2022 走看看