SQL Server 查询两个时间段的交集

create table test(
startdate date,
enddate date
)
insert test VALUES('2018-9-1','2018-9-10')
insert test VALUES('2018-8-30','2018-9-5')
insert test VALUES('2018-8-25','2018-8-30')


declare @Start nvarchar(32)
declare @End nvarchar(32)
set @Start='2018-9-3'
set @End='2018-9-5'

select * from test where (enddate>=@Start and enddate<=@End) or (startdate>=@Start and startdate<=@End) or (startdate<@Start and enddate>@End)

 


版权声明:本文为qq_35193189原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。