如果特定字段的值与上一行中该字段的值不同,请选择行

时间:2017-04-24 05:10:51

标签: sql database oracle plsql

我有一张这样的桌子。

enter image description here

如果该行的值字段与上一行的值字段不同,我想选择行。换句话说,在示例表中,我想获取这些行:1,2,3,6,7。我怎么能这样做?

1 个答案:

答案 0 :(得分:3)

使用目标中的延迟功能获取每行的上一个值。

在你的情况下:

select * 
from (
select parameter, value, year, LAG(value, 1) 
over (order by your_order_by_column) pre_value from T_TABLE)
where pre_value <> value;