MySQL 查询连续出现N次

一、查询连续出现N次的name

 

 

二、思路

1、创建辅助变量@num出现次数,@val字符值

SELECT @num,@val;

2、使用IF判断当前值是否与缓存值相同,如果相同则次数@num+1,否则次数@num还原为1

SELECT
  mt.id,
  mt.name,
  @num:=IF(@val=`name`,@num:=@num+1,1) AS nums,
  @val:=`name` AS temp
FROM my_test mt,
  (SELECT
     @num,
     @val) re;

 

posted @ 2022-06-10 11:13  tony耳朵  阅读(468)  评论(0)    收藏  举报