用sql语句, 我想把当前日期与历史日期之间的所有日期列出来, 比如:今天的日期是2006-12-13日, 过去某一时间2006-12-1日, 显示结果为:2006-12-2
2006-12-3
2006-12-4
2006-12-5
2006-12-6
2006-12-7
2006-12-8
2006-12-9
2006-12-10
2006-12-11
2006-12-12
2006-12-13请各位大虾帮帮我, 不甚感激.......小弟在线等~~~~
2006-12-3
2006-12-4
2006-12-5
2006-12-6
2006-12-7
2006-12-8
2006-12-9
2006-12-10
2006-12-11
2006-12-12
2006-12-13请各位大虾帮帮我, 不甚感激.......小弟在线等~~~~
returns @tb table([Date] datetime)
as
begin
while @begDT<=@endDT
begin
insert @tb select @begDT
set @begDT=@begDT+1
end
return
endselect * from fun('2006-12-1', '2006-12-13')
from 表
where 时间列 between '2006-12-1'and '2006-12-13'
, 请问我只想得到2006-12-01, 应该怎么改???
使用 convert(varchar(10),Date,120)
returns @tb table([Date] datetime)
as
begin
while @begDT<=@endDT
begin
insert @tb select @begDT
set @begDT=@begDT+1
end
return
end在这个里面怎么转换啊.........
alter function fun(@begDT datetime, @endDT datetime)
returns @tb table([Date] varchar(10))
as
begin
while @begDT<=@endDT
begin
insert @tb select convert(varchar(10),@begDT,120)
set @begDT=@begDT+1
end
return
endselect date from fun('2006-12-1', '2006-12-13')
但是@tb table([Date] datetime)这个表就需要重新定义了
@tb table([Date] varchar(10))就可以了
from 表
where 时间列 between '2006-12-1 00:00:00.000'and '2006-12-13 23:59:59.999'