【发布时间】:2023-03-20 03:20:02
【问题描述】:
这样的数据:
timestamp id roas
day 5 id1 1.3
day 4 id1 2.1
day 3 id1 1.9
day 2 id1 1.4
day 1 id1 3.0
我想获取第一天的数据,当所有行的 roas day 2,期望的结果:
timestamp id roas min_date
day 5 id1 1.3 day 2
day 4 id1 2.1 day 2
day 3 id1 1.9 day 2
day 2 id1 1.4 day 2
day 1 id1 3.0 day 2
目前,我使用:
, t2 as (select *, case when roas < = 1.5 then timestamp else null end as day_roas from t1)
select *, min(day_roas) over (partition by id) as min_date
from t2
【问题讨论】:
-
请注意,只需
min(CASE WHEN roas <= 1.5 THEN timestamp END)也可以,不需要额外的t2CTE。
标签: postgresql window-functions case-when