适用场景:
统计连续打卡,签到以及访问等情况的统计。
结果为两列,一列是要统计的字段列,另一列是最大连续记录。
select * from
(
select aa.字段名, max(rownum) maxrow
from
(
select bb.id, bb.字段名
if((bb.字段名=@pname) , @row:=@row+1 , @row:=1) rownum, # 如果值连续,就递增,否则从0重新开始
@pname:=bb.字段名 pn
from 表名 bb,
(select @row:=0, @pname:='000000') row1 # 定义变量的初始值
) aa
group by aa.字段名
) cc
order by cc.maxrow desc; # 按照连续次数从大到小排序