sql >> Database teknologi >  >> RDS >> Mysql

Mysql:find antallet af rækker, der har samme værdi den ene efter den anden

Åh, jeg tror, ​​jeg fandt ud af det. Du bekymrer dig om sekvenser af værdier, der er tilstødende. Den første kolonne er det maksimale id, den anden er værdien, og den tredje er længden.

Ja, du kan gøre dette med variabler:

select max(id), val, count(*)
from (select t.*,
             (@grp := if(@v = val, @grp,
                         if(@v := val, @grp + 1, @grp + 1)
                        )
             ) as grp
      from yourtable t cross join
           (select @v := -1, @grp := -1) params
      order by id
     ) t
group by grp, val
order by max(id);


  1. xx tid siden funktionen virker ikke

  2. reverse mysql_real_escape_string

  3. Fejl:[email protected] install:`node-gyp rebuild` under installation af oracledb-modulet

  4. Antal median grupperet efter dag