--要求所有日期介于@date1 0:00 和 @date2 23:59:59 的记录 不太明白??所有的时间都是介于它们之间的呵 --如果要求所有日期介于@date1 0:00 和 @date2 12:19:46 的记录,可如下: declare @t_a table(id int identity(1,1),curdate datetime) insert into @t_a select '2004-09-09 20:19:46' union all select '2004-09-09 12:19:46' union all select '2004-09-09 00:00:00' select * from @t_a where substring(convert(varchar(50),curdate,120),12,8) between '00:00:00' and '12:19:46'
where 日期>=@date1 and @date1 <dateadd(day,1,@date2)
--要得到某日的最大時間,先給日期加1天,再減去1秒declare @date1 datetime,@date2 datetime set @date1=cast('2004-09-01 00:00:00' as datetime) set @date2=cast('2004-09-20 00:00:00' as datetime)set @date2=dateadd(ss,-1,@date2) print convert(varchar(20),@date2,120)select * from ta where 日期 between @date1 and @date2
不太明白??所有的时间都是介于它们之间的呵
--如果要求所有日期介于@date1 0:00 和 @date2 12:19:46 的记录,可如下:
declare @t_a table(id int identity(1,1),curdate datetime)
insert into @t_a select '2004-09-09 20:19:46'
union all select '2004-09-09 12:19:46'
union all select '2004-09-09 00:00:00'
select * from @t_a
where substring(convert(varchar(50),curdate,120),12,8) between '00:00:00' and '12:19:46'
set @date1=cast('2004-09-01 00:00:00' as datetime)
set @date2=cast('2004-09-20 00:00:00' as datetime)set @date2=dateadd(ss,-1,@date2)
print convert(varchar(20),@date2,120)select * from ta where 日期 between @date1 and @date2