我想从间隔与查询中指定的间隔相交的表中提取行。假设我有一个简单的ID, DATE_START,DATE_END
表和两个查询参数,P_DATE_START
并且P_DATE_END
,表达查询的最简单方法是什么,以便找到[DATE_START,DATE_END]
具有至少一个公共元素的所有行[P_DATE_START, P_DATE_END]
?
更新:
为了使预期结果更加清晰,请在下面找到输入值和预期结果的列表。列是 DATE_START, DATE_END, P_DATE_START, P_DATE_END, MATCH
。
16, 17, 15, 18, YES
15, 18, 16, 17, YES
15, 17, 16, 18, YES
16, 18, 15, 17, YES
16, 17, 18, 19, NO
18, 19, 16, 17, NO
更简单:
SELECT id, date_start, date_end
FROM thetable
WHERE date_start <= p_date_end
AND date_end >= p_date_start
问题内容: 我在数据库中有2个表,这些表具有以下属性: 第二个表是“预订”和“资源”之间的关联实体(即1个预订可以包含许多资源)。属性booking_start和booking_end是带有日期和时间的时间戳。 我是否可以知道如果日期/时间与其他类似resource_id的预订重叠或冲突,我如何能够找到每个resource_id(预订的)? 我以图形方式在纸上涂上答案,以查看它是否可以帮助我形象化
假设我有一个表,它有两列X1和X2,其中X1总是小于X2。每行构成一定的范围(X1,X2)。可能有几行的X1/X2范围重叠,从而产生更大的范围(X1n,X2m)。 有没有办法使用标准SQL查询来查找所有这些范围? 例如,该表可能如下所示: 预期产出将是: 我非常感谢您在正确方向上对我们的帮助。 我正在使用sqlite。
使用新的Pandas IntervalIndex。is\u重叠您可以检查IntervalIndex是否重叠。该函数仅返回整个数据帧的布尔值,但不分组/标识重叠/不重叠的间隔。如何使用高效的熊猫间隔功能实现这一点?
我知道如何检查其中两个圆是否重叠(它们中心之间的距离小于直径)。我可以对每对圆执行此检查,但我想知道是否有更好的算法(比)更快)。 编辑 圆圈的数目通常是100个左右,重叠不会经常发生。
这与寻找重叠的间隔有关。给定一个间隔列表(间隔树),我知道如何做到这一点。我有一个间隔列表。例如, 结果应该是 [2,3], [7,8] 我需要做的是找到所有列表中常见的间隔列表。 我认为这个问题类似于合并列表。问题是我无法应用列表的成对合并。应用此方法可能会导致丢失重叠间隔。因此,我需要将所有列表合并在一起,一次考虑所有列表(而不是成对)。 我可以使用间隔树。将每个列表中的第一个间隔插入间隔树并
问题内容: 假设我在Sql Server 2008中具有下表: 如您所见,该表具有StartDate和EndDate列。我想验证这些列中的数据。间隔不能相互冲突。因此,上面的表是有效的,但是下一个表是无效的,因为第一行的结束日期大于第二行的StartDate。 在这里表示无穷大。 您能帮我写一个脚本进行数据验证吗? [第二项任务] 感谢您的回答。我很复杂。假设我有这样的表: 在这里,我想验证一组中