sql >> Databasteknik >  >> RDS >> Mysql

få på varandra följande poster i mysql

Inre fråga räknar varje rad. Yttre fråga får max per användare. Frågan är opröstad (men baserad på en som fungerar)

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


  1. Hur man återställer/återskapar mysqls standard "mysql"-databas

  2. Hur lagrar man arrayer i MySQL?

  3. kopiera data från en mysql-databas till en annan mysql-databas med java

  4. Fel vid körning av mvn sql:execute