Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Agrupar linhas por intervalo de faixa de ano


Primeiro calcule a década para cada linha
select floor(year(`year`) / 10) * 10 as decade
from tbl_people

e, em seguida, use este resultado intermediário para contar SQL Fiddle
select count(*), decade, decade + 9
from (select floor(year(`year`) / 10) * 10 as decade
      from tbl_people) t
group by decade

ou este SQL Fiddle , se você quiser a década em uma coluna
select count(*) as count, concat(decade, '-', decade + 9) as year
from (select floor(year(`year`) / 10) * 10 as decade
      from tbl_people) t
group by decade