考试题目

Aslan_ 2008-05-16 01:44:16
如何用sql语句输出2005年10月29日到2005年11月01日之间的日期
...全文
154 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
ojuju10 2008-05-16
  • 打赏
  • 举报
回复


select * from tb
where createtime between '2005-10-29' and '2005-11-01'


swot2008 2008-05-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jinjazz 的回复:]
SQL codeselect dateadd(d,i,'2005-10-29') from(select 1 as i union select 2 union select 3)a
[/Quote]
srgcc 2008-05-16
  • 打赏
  • 举报
回复
Mark
Aslan_ 2008-05-16
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 jinjazz 的回复:]
引用 8 楼 XSing 的回复:
SQL的循环语句做可以吗


上面这么多方法你不会自己测试么
[/Quote]网速慢,现在才看到
jinjazz 2008-05-16
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 XSing 的回复:]
SQL的循环语句做可以吗
[/Quote]

上面这么多方法你不会自己测试么
Aslan_ 2008-05-16
  • 打赏
  • 举报
回复
SQL的循环语句做可以吗
律己修心 2008-05-16
  • 打赏
  • 举报
回复
declare @tb table (dt varchar(10))
declare @startdate varchar(10)
declare @enddate varchar(10)
set @startdate='2005-10-29'
set @enddate='2005-11-01'
while cast(@startdate as datetime)<cast(@enddate as datetime)
begin
set nocount on
set @startdate=convert(varchar(10),dateadd(day,1,@startdate),20)
if(cast(@startdate as datetime)<cast(@enddate as datetime))
insert into @tb select @startdate
set nocount off
end
select * from @tb
zanyzyg 2008-05-16
  • 打赏
  • 举报
回复

create table #t(dt datetime)

declare @beg datetime
declare @end datetime
set @beg='2005-10-29'
set @end='2005-11-2'
while @beg<=@end
begin
insert into #t(dt)values(@beg)
set @beg=dateadd(day,1,@beg)
end

select * from #t

drop table #t
jinjazz 2008-05-16
  • 打赏
  • 举报
回复

select dateadd(d,i,'2005-10-29') from(
select (select count(*) from sysobjects where id>a.id)as i from sysobjects a
)a where a.i<=datediff(d,'2005-10-29','2005-11-01')
sweetweiwei 2008-05-16
  • 打赏
  • 举报
回复
declare @a int
set @a = 1
while @a <= datediff(dd,'2005-10-29','2005-11-01')
begin
select dateadd(dd,@a,'2005-10-29')
set @a = @a +1
end
pt1314917 2008-05-16
  • 打赏
  • 举报
回复

select top 1000 id=identity(int,1,1) into # from sysobjects
declare @start datetime,@end datetime
set @start='2005-10-29'
set @end='2005-11-01'
select dateadd(dd,id,@start) from #
where datediff(dd,@start,@end)>id

Aslan_ 2008-05-16
  • 打赏
  • 举报
回复
有另外的方法吗?指定日期,而不是已知多少天的情况
jinjazz 2008-05-16
  • 打赏
  • 举报
回复
select dateadd(d,i,'2005-10-29') from(select 1 as i union select 2 union select 3)a

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧