一个sql很简单的求时间重叠数据的问题
一个sql求时间重叠数据的问题:
表结构:
Name Type Nullable Default Comments
------------ -------- -------- ------- --------
ROOM_NBR INTEGER
ARRIVAL_DATE DATE
LEAVE_DATE DATE
GUEST_NAME CHAR(30) Y
表内数据:
ROOM_NBR ARRIVAL_DATE LEAVE_DATE GUEST_NAME
1 4/1/2010 4/2/2010 A
1 4/3/2010 4/4/2010 B
2 4/1/2010 4/3/2010 C
2 4/2/2010 4/4/2010 D
现在要求求出哪个房间存在时间重叠的
希望结果:
ROOM_NBR
2
我现在的sql是:
select a.room_nbr from test_hotel a where exists
(
select 1 from test_hotel b where
a.room_nbr=b.room_nbr and
(a.arrival_date<=b.leave_date or a.leave_date>=b.arrival_date)
)
但出来的结果是
1
1
2
2
请大家告诉我,我哪里写错了
表结构:
Name Type Nullable Default Comments
------------ -------- -------- ------- --------
ROOM_NBR INTEGER
ARRIVAL_DATE DATE
LEAVE_DATE DATE
GUEST_NAME CHAR(30) Y
表内数据:
ROOM_NBR ARRIVAL_DATE LEAVE_DATE GUEST_NAME
1 4/1/2010 4/2/2010 A
1 4/3/2010 4/4/2010 B
2 4/1/2010 4/3/2010 C
2 4/2/2010 4/4/2010 D
现在要求求出哪个房间存在时间重叠的
希望结果:
ROOM_NBR
2
我现在的sql是:
select a.room_nbr from test_hotel a where exists
(
select 1 from test_hotel b where
a.room_nbr=b.room_nbr and
(a.arrival_date<=b.leave_date or a.leave_date>=b.arrival_date)
)
但出来的结果是
1
1
2
2
请大家告诉我,我哪里写错了
...全文
相关推荐
overlap_checker:通过引入计算的作业延迟来减少SQL Agent作业重叠的应用程序
该项目通过计算SQL Server Agent作业的预计执行时间,检测潜在的时间重叠,并自动插入延迟步骤以避免并发冲突。核心功能包括作业数据分析、重叠检测与延迟计算,依赖存储过程和C#应用程序协同工作
3分钟学会SQL中的时点状态分析技术,轻松搞定时间重叠和时间间隙两大难题?
3分钟学会SQL中的时点状态分析技术,轻松搞定时间重叠和时间间隙两大难题?
学生网上选课系统(ASP.NET附加数据库)
SQL SERVER 2005提供了强大的数据查询语言SQL,支持事务处理、索引优化、存储过程等功能,确保了数据的一致性和访问效率。
SyncSQL:VSBD Aufgabe 同步 2 个不同的数据库系统
同步SQL VSBD 任务同步 2 个不同的数据库系统任务记录您尝试同步两个异构数据库系统(MySQL、Postgresql)。 使用不同的方案(不同的表结构)并说明不同程度的异质性会出现哪些困难(如
一个比较好的智能选课系统
通常,数据库管理系统(如MySQL、SQL Server或SQLite)会被用来存储这些数据,便于快速查询和更新。附加数据库文件意味着我们需要在数据库服务器上加载这个文件,以便系统可以访问其中的数据。


基础和管理
