所以,我有下表。
DUR - 持续时间(秒)。
表由DT订购。 当两个接近的行(27和28行)具有相同的DUR值(33)时,则与 DT(第27行) - DT(第28行)值进行比较。 如果DUR> DT27-DT28然后我想要第27行(最早的记录)在选择结果中。
答案 0 :(得分:0)
在Oracle中,您可以这样做:
select t.*
from (select t.*,
lead(dur) over (order by dt) as next_dur,
lead(dt) over (order by dt) as next_dt
from t
) t
where next_dur = dur and
dur / (24*60*60) > (next_dt - dt);
您的问题未提及NUM_A
列,但您可能希望在分析函数中使用partition by NUM_A
。