从另一列获取前一列数据

时间:2019-03-03 15:27:02

标签: sql oracle

我有下表Score_calc,其中有3列来计算得分。

我需要查询以根据以下条件获得score_id

示例:考虑是否要搜索值calc_pnt <=0.6,然后在表中查找calc_pnt <=0.6,对应的值score_id'4',但我需要将值{一个。

'3',然后从score_id我需要值Regn_code=10 and calc_pnt <=0.6

我尝试了以下

enter image description here

'3'

a工作正常,我将得到select max(score_id) from (select calc_pnt,score_id,lag(score_id) over(score_id) as previous from Score_calc where calc_pnt <=0.6 ) 的结果,但是如果我给'3',那么我将得到calc_pnt <=0.7

请您帮忙

1 个答案:

答案 0 :(得分:0)

我不明白您的需求。这似乎返回您想要的东西:

select max(score_id)
from from Score_calc
where calc_pnt < 0.6 and regn_cd = 10;