如何忽略Oracle11中的增值行

时间:2017-08-08 19:03:26

标签: sql database oracle11g

所以我有一个表,其中有一个值列表,我需要按日期排序,并忽略数字大于前一个数字的行。请看下表:

Date            Value
01/01/2017      10
01/02/2017      9
01/03/2017      8
01/04/2017      10//Ignore this because previous entry is less(8<10)
01/05/2017      9...

那么当我做选择时,我的回答是什么:

10
9
8
9

仅使用查询是否可以实现?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

我想你想要asset_cache_buster = :none cache = false

lag()

答案 1 :(得分:1)

您可以使用LAG

WITH cte AS (
  SELECT *, LAG(Value,1,0) OVER(ORDER BY Date) AS prev
  FROM your_table
)
SELECT *
FROM cte
WHERE Value > prev;