在SQL Server中的可用日期之间进行搜索

时间:2017-08-28 10:28:00

标签: sql sql-server

我有一张桌子如下表所示。

id  accommodation_id    room_type_id    date_from   date_to
3   1                      2            2017-08-29  2017-09-10 
4   1                      9            2017-08-30  2017-09-08 

如您所见,我的日期为2017-08-29至2017-09-10。现在如果我在这些日期之间进行搜索,例如我在2017-08-25到2017-09-15之间搜索,我就不会看到任何记录。我只想列出我的日期是在桌子上的日期之间的范围。

使用下面的查询获取所有记录。如何修改查询以获得我想要的结果?

SELECT id, accommodation_id, room_type_id, date_from, date_to
FROM [Agents].[dbo].[Vacancies]
where (date_from >= '2017-08-25' and date_to <= '2017-09-15')

我希望我对自己的问题很清楚!

1 个答案:

答案 0 :(得分:2)

更改这样的where子句。

WHERE 
    ('2017-08-25' between date_from AND date_to ) 
    and ('2017-09-15' between date_from AND date_to )