直接上干货,测试数据如下

select distinct dd.Num ConsecutiveNums
from (
select d.score,
@n :=if(@pre=score,@n+1,@n:=1) count,
@pre:=score
from Logs d,
(select @pre:=null, @n :=1) r ) dd
where dd.count>=3;
统计结果如下:

补充:
MySQL的 @x 是 用户自定义的变量 (User variables are written as @var_name)
@设置全局变量值:
mysql> SET @t1=0, @t2=0, @t3=0;
mysql> SELECT @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;

本文通过一个具体的案例,深入解析了MySQL中用户自定义变量的使用方法,包括如何设置全局变量值,以及如何在SQL查询中利用这些变量进行复杂的数据统计。通过一个涉及连续数值计数的实际场景,展示了自定义变量在解决实际问题中的应用。

1213

被折叠的 条评论
为什么被折叠?



