最近在写三位报表,发现日历的产出,没有的则为0显示,需要一个日历表
drop table T_Calendar
create table T_Calendar
(
rkey int primary key identity(1,1),--编号
tyear int not null,--年份
tmonth int not null,--月份
tday int not null,--日期
ymd varchar(10) not null,--日期
tdw varchar(10) not null,--星期
ttype int default(0) --默认为0
)
DECLARE @EndDate as smalldatetime
set @EndDate='2020-01-01'
while @EndDate <='2021-12-31'
begin
insert into T_Calendar(tyear,tmonth,tday,ttype,ymd,tdw)
values(year(@EndDate),month(@EndDate),DAY(@EndDate),0,convert(nvarchar(10),@EndDate,120),DATENAME (dw, @EndDate))
set @EndDate= @EndDate+1
end
select * from T_Calendar