I would not know about the built-in function for this. This request can complete the task:
WITH x AS (
SELECT t, val
,@(lead(val) OVER w - val) AS delta1
,@(lag(val) OVER w - val) AS delta2
FROM tbl
WINDOW w AS (ORDER BY t)
ORDER BY t
)
SELECT t, val
FROM x
WHERE delta1 > 0.2
OR delta2 > 0.2
OR delta1 IS NULL
OR delta2 IS NULL;
lead() lag() @ CTE ( ).
, 0.2 ( ).
- , delta1 delta2 NULL ( / ). , NULL- SELECT.
.
, :
WITH x AS (
SELECT t, val
,@(lead(val) OVER w + lag(val) OVER w - 2*val) AS deviate
FROM tbl
WINDOW w AS (ORDER BY t)
ORDER BY t
)
SELECT t, val, deviate
FROM x
WHERE deviate > 0.2
OR deviate IS NULL;
. Time: 12, Value: 5 , . ( .)