ggll611928

 

1. 查询:以“周”为单位

--查询以下时间段内分别有几周
--时间段:“2017-09-01”到“2017-10-1”
select number as wknum 
from master..spt_values
where type=\'p\'  
AND number>=datepart(wk,\'2017-9-1\') 
and number<= datepart(wk,\'2017-10-1\') 


  结果如下图

 

 

2. 查询:以“月”为单位

--查询以下时间段内分别有几月
--时间段:“2017-09-01”到“2017-10-1”
select number as wknum 
from master..spt_values
where type=\'p\'  
AND number>=datepart(mm,\'2017-9-1\') 
and number<= datepart(mm,\'2017-10-1\')

 

  结果如下图

 

 

3. 查询:以“日”为单位

--查询以下时间段内分别有几日
--时间段:“2017-09-29”到“2017-10-3”
select convert(varchar(10),DATEADD(day,number,\'2017-9-29\') ,120) wknum
from master.dbo.spt_values 
where type=\'p\' 
AND number<=DATEDIFF(day,\'2017-9-29\',\'2017-10-3\')

 

  结果如下图

 

分类:

技术点:

相关文章: