sqlserver通过select查询出连续的日历临时表
首先我们需要用到这个
select * FROM master..spt_values n WHERE n.type = 'p' AND n.number <= 7
里面分几个列,我们需要连续的,所有就需要用到number列
SELECT CONVERT (varchar(100),dateadd(d, number, dateadd(d, -30, GETDATE())),23) AS every_time FROM master..spt_values WHERE type = 'p' AND number between 1 and 30 SELECT CONVERT (VARCHAR (7),dateadd(m, number, dateadd(m, -11, GETDATE())),120) AS every_time FROM master..spt_values n WHERE n.type = 'p' AND n.number <= 11
number的值是从0开始的,所以我们先算出来起始日期:
select dateadd(m, -11, GETDATE())
然后通过CONVERT转换成我们需要的日期格式
SELECT CONVERT (varchar(100),dateadd(d, number, dateadd(d, -30, GETDATE())),23) AS every_timeFROM master..spt_valuesWHERE type = 'p' AND number between 1 and 30