mysql查询最大连续出现天数

来源:互联网 发布:知乎的回答怎么删除 编辑:程序博客网 时间:2024/06/18 13:57

注明:sql参考和借鉴以前一个论坛的帖子,但忘记链接了

以下是修改后适应自己所需的sql:

SELECT * FROM(SELECT * FROM(SELECT jjdwbh,max(days) lianxu_days,min(login_day) start_date,max(login_day) end_date FROM(SELECT jjdwbh,@cont_day := (CASEWHEN (@last_uid = jjdwbhAND DATEDIFF(bjsj, @last_dt) = 1) THEN(@cont_day + 1)WHEN (@last_uid = jjdwbhAND DATEDIFF(bjsj, @last_dt) < 1) THEN(@cont_day + 0)ELSE1END) AS days,(@cont_ix := (@cont_ix + IF (@cont_day = 1, 1, 0))) AS cont_ix,@last_uid := jjdwbh,@last_dt := bjsj login_dayFROM(SELECT jjdwbh,DATE(bjsj) bjsj FROM b_jjdb WHERE jjdwbh != 0 ORDER BY jjdwbh,bjsj) AS t,(SELECT@last_uid := '',@last_dt := '',@cont_ix := 0,@cont_day := 0) AS t1) AS t2GROUP BY jjdwbh,cont_ix HAVING lianxu_days>5)as tmp ORDER BY lianxu_days DESC )ntmp GROUP BY jjdwbh;


原创粉丝点击