我想从一个表中提取行,这些行的间隔与查询指定的间隔相交。假设我有一个简单的
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