如何解决计算特定值/功能之间有多少行
我希望在看到“ LOAN_CASH_IN”时重置计数
仍然尝试使用window,但是找不到解决方案。
select aux.*,count(1) over (partition by wallet_id
order by order_created_at asc)
from aux
解决方法
您可以使用两个级别的窗口功能:
select aux.*,row_number() over (partition by wallet_id,grp
order by order_created_at asc
)
from (select aux.*,sum(case when order_type_micro = 'LOAN_CASH_IN' then 1 else 0 end) over (partition by wallet_id order by order_created_at) grp
from aux
) aux;
row_number()
更适合您的需求,除非您真的非常了解为什么将count()
用作累积窗口函数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。