带条件的窗口函数

Joh*_*ohn 5 sql oracle window-functions

我有下表。

First_Value满足条件时可以创建窗口函数吗?

例如,当 is = 1 时我需要第一个值并按 id 分区

表A

ID    Date       IS
 1     1/1/18    0
 1     1/2/18    1
Run Code Online (Sandbox Code Playgroud)

我的工作:

   SELECT 
   CASE
   WHEN A.IS = 1 THEN A.DATE END)OVER (PARTITION BY A.ID ORDER BY A.DATE)                
   END FIRST_ATTEMPT_DT
   FROM TABLEA A
Run Code Online (Sandbox Code Playgroud)

Gor*_*off 5

改用min()

select min(case when a.is = 1 then a.date end) over (partition by a.id)
Run Code Online (Sandbox Code Playgroud)