【发布时间】:2018-10-18 13:20:09
【问题描述】:
我正在使用 sql 并尝试实现以下结果 (running_count)。
我试过窗口函数计数,但我不知道如何实现我的计数器的重置。
select *,
count(1) over
(partition by ID, DATE order by DATE rows unbounded preceding) -1 as "run_count" from table
我的(结果)应该是这样的。计数应在几天之间重置,但也在 A 之间出现 B 时。
ID Date Flag Running_Count
1 10/10 A 1
**2 10/10 B 0** -> reset
**3 10/10 B 0** -> reset
4 10/10 A 1
5 10/10 A 2
6 10/10 A 3
1 11/10 B 0
2 11/10 B 0
3 11/10 A 1
4 11/10 A 2
5 11/10 A 3
6 11/10 A 4
**7 11/10 B 0** -> reset
8 11/10 A 1
【问题讨论】:
-
请解释您的计数逻辑并用您正在使用的数据库标记问题。
-
我已经做到了。谢谢
标签: sql function count sap hana