PostgreSQL 14上有一个数据库。表中有字段numb
(BIGINT)、id
(Varchar)、date_from
(TIMESTAMP),它包含以下形式的记录:
numb;id;date_from;
124455;5820;2022-07-20 08:01:29;
124455;5820;2022-07-24 08:01:29;
124455;5402;2022-07-27 00:01:31;
124455;1020;2022-07-28 00:06:01;
numb
我们有一个日期(在条件中)'2022-07-26 21:03:23',我们需要构建一个查询,以便在一个查询中我们选择= 124455的上一条记录,并且date_from
小于记录中的'2022-07-27 00:01:31'
因此,我们应该只选择条目: ' 124455;5820;2022-07-24 08:01:29; ',因为它的日期大于下一条记录的日期:'2022-07-27 00:01:31'并且大于日期为'2022-07-20 08:01:29'的记录。
因此,事实证明,我们应该始终仅选择一个且仅选择date_from
小于“2022-07-26 21:03:23”的条目中的上一个条目,但不大于下一个条目date_from
“2022-07-27 00” :01' :31'。
如果我正确理解了这个问题
例子
如果您需要具有特定编号的记录,则需要像这样重做您的示例