给定一个包含日期或日期时间列的简单表格,我想查询在给定可选过滤器的情况下存在行的连续天数的最大连续条数。确定连续天数的最大连续数(0123)
例如说表有以下几列:
ID,日期时间,用户名,类别
我希望能够查询,以最有效的方式,将:
- 最长的条纹(天)一个给定的用户名,
- 最长给定类别内的给定的用户名的条纹(以天计),
- 最长的条纹(天)无论任何用户名或类别,
- 等
(我猜的查询将没有太大变化基于这些过滤器,但他们给的想法。)
找到其他类似的问题,但没有似乎回答了这个特殊的需求,但是随时可以将我联系到我可能错过的适当的一个。
非常感谢您提前。
您是否想要记录一个给定用户连续记录天数的最大值(难度)或两次连续登录(简单)之间的最大天数?前者为 – Faibbus
。我确实意识到查询不会很简单...谢谢。 – Jeto
这将被构造为一个LAG查询,用于计算这些行数据与上一行之间的差异。那么如果少于一天,那么应该产生'1'的值。整个事件是在非1行上重置的累计和的子查询。 - 那么这就是MAX聚合的子查询。 – Randy