SQL怎样查询两个日期间的所有日期?

2025-12-04 07:23:52
推荐回答(2个)
回答1:

用临时表和循环吧

declare @dateOff int
declare @startdate varchar(10)
declare @enddate varchar(10)
set @startdate = '2014-06-12'
set @enddate = '2014-06-16'
set @dateOff = DATEDIFF( D ,@startdate ,@enddate )
if exists (select name from sys .objects where name = '#temp')
drop table #temp
create table #temp (_date date)
while @dateOff > -1
begin
INSERT INTO #temp VALUES(convert(date,@startdate))
--print convert(date,@startdate)
set @startdate=dateadd(d,1,@startdate)
set @dateOff = @dateOff - 1
end
SELECT *FROM #temp

回答2:

SELECT date FROM table WHERE date >= startdate AND enddate<=enddate;