declare @sdate1 datetime
declare @edate1 datetime
set @sdate1 = '2008-02-03'
set @edate1 = '2008-02-13'
declare @sdate2 datetime
declare @edate2 datetime
set @sdate2 = '2008-02-01'
set @edate2 = '2008-02-07'select m.dt from
(
select
dateadd(dd,num,@sdate1) dt
from
(select isnull((select count(1) from sysobjects where id<t.id),0) as num from sysobjects t) a
where
dateadd(dd,num,@sdate1)<=@edate1
) m where dt not in
(
select
dateadd(dd,num,@sdate2) dt
from
(select isnull((select count(1) from sysobjects where id<t.id),0) as num from sysobjects t) a
where
dateadd(dd,num,@sdate2)<=@edate2
) /*
dt
------------------------------------------------------
2008-02-08 00:00:00.000
2008-02-09 00:00:00.000
2008-02-10 00:00:00.000
2008-02-11 00:00:00.000
2008-02-12 00:00:00.000
2008-02-13 00:00:00.000(所影响的行数为 6 行)
*/
declare @edate1 datetime
set @sdate1 = '2008-02-03'
set @edate1 = '2008-02-13'
declare @sdate2 datetime
declare @edate2 datetime
set @sdate2 = '2008-02-01'
set @edate2 = '2008-02-07'select m.dt from
(
select
dateadd(dd,num,@sdate1) dt
from
(select isnull((select count(1) from sysobjects where id<t.id),0) as num from sysobjects t) a
where
dateadd(dd,num,@sdate1)<=@edate1
) m where dt not in
(
select
dateadd(dd,num,@sdate2) dt
from
(select isnull((select count(1) from sysobjects where id<t.id),0) as num from sysobjects t) a
where
dateadd(dd,num,@sdate2)<=@edate2
) /*
dt
------------------------------------------------------
2008-02-08 00:00:00.000
2008-02-09 00:00:00.000
2008-02-10 00:00:00.000
2008-02-11 00:00:00.000
2008-02-12 00:00:00.000
2008-02-13 00:00:00.000(所影响的行数为 6 行)
*/
where 房号 not in (select 房号 from tb where 日期 between '2008-02-01' and '2008-02-07')
and 日期 between '2008-02-03' and '2008-02-13'
这样?
and starttime<@end
返回两个日期之间的时间间隔。 DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]])DateDiff 函数的语法有以下参数:参数
interval必选项。String expression 表示用于计算 date1 和 date2 之间的时间间隔。date1, date2必选项。日期表达式。用于计算的两个日期。Firstdayofweek可选项。指定星期中第一天的常数。如果没有指定,则默认为星期日。Firstweekofyear可选项。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。