【发布时间】:2021-12-03 11:50:00
【问题描述】:
我有一个表格,其中包含代码列表以及代码处于活动状态的开始和结束日期。我想选择最近的活动代码。这很简单,但我遇到的部分是您可以拥有具有重叠日期的相同代码,这意味着两者都是活动的,我需要选择所有这些记录。或者您可以使用相同的代码,但日期紧随其后,这意味着之前的代码不再有效,我想忽略它。
见下表示例:
在下表中,如果您有两个相同的代码,但日期紧随其后,那么我基本上需要说这张表好,然后取最近的,如果日期重叠,则选择...
ID | Code | Start Date | End Date | I need to select
01 | A110 | 15/01/21 | NULL | select
02 | A110 | 14/05/19 | NULL | select
03 | A110 | 10/10/18 | 13/05/19 | Ignore
03 | B200 | 15/01/21 | NULL | select
04 | B200 | 10/12/20 | 14/01/21 | Ignore
05 | C600 | 15/01/21 | NULL | Select
【问题讨论】:
-
嗨,请指定您正在使用的 DBMS 以及您尝试过的查询
标签: sql date sorting row-number