給定一個包含日期或日期時間列的簡單表格,我想查詢在給定可選過濾器的情況下存在行的連續天數的最大連續條數。確定連續天數的最大連續數(0123)
例如說表有以下幾列:
ID,日期時間,用戶名,類別
我希望能夠查詢,以最有效的方式,將:
- 最長的條紋(天)一個給定的用戶名,
- 最長給定類別內的給定的用戶名的條紋(以天計),
- 最長的條紋(天)無論任何用戶名或類別,
- 等
(我猜的查詢將沒有太大變化基於這些過濾器,但他們給的想法。)
找到其他類似的問題,但沒有似乎回答了這個特殊的需求,但是隨時可以將我聯繫到我可能錯過的適當的一個。
非常感謝您提前。
您是否想要記錄一個給定用戶連續記錄天數的最大值(難度)或兩次連續登錄(簡單)之間的最大天數?前者爲 – Faibbus
。我確實意識到查詢不會很簡單...謝謝。 – Jeto
這將被構造爲一個LAG查詢,用於計算這些行數據與上一行之間的差異。那麼如果少於一天,那麼應該產生'1'的值。整個事件是在非1行上重置的累計和的子查詢。 - 那麼這就是MAX聚合的子查詢。 – Randy