आंतरिक क्वेरी प्रत्येक स्ट्रीक को गिनती है। बाहरी क्वेरी प्रति उपयोगकर्ता अधिकतम प्राप्त करती है। क्वेरी का परीक्षण नहीं किया गया है (लेकिन जो काम करता है उस पर आधारित)
set @user_id = null;
set @streak = 1;
select user_id, max(streak) from (
SELECT user_id, streak,
case when @user_id is null OR @user_id != user_id then @streak := 1 else @streak := @streak + 1 end as streak_formula,
@user_id := user_id,
@streak as streak
FROM my_table
) foo
group by user_id