sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan kan du gruppere efter i intervaller i SQL?

Ingen af ​​de højest stemte svar er korrekte på SQL Server 2000. Måske brugte de en anden version.

Her er de korrekte versioner af dem begge på SQL Server 2000.

select t.range as [score range], count(*) as [number of occurences]
from (
  select case  
    when score between 0 and 9 then ' 0- 9'
    when score between 10 and 19 then '10-19'
    else '20-99' end as range
  from scores) t
group by t.range

eller

select t.range as [score range], count(*) as [number of occurrences]
from (
      select user_id,
         case when score >= 0 and score< 10 then '0-9'
         when score >= 10 and score< 20 then '10-19'
         else '20-99' end as range
     from scores) t
group by t.range


  1. Beregn en løbende total i SQL Server

  2. Arbejde med begivenheder i Oracle Cloud Infrastructure Del 1:grundlæggende service

  3. sqliteLog 14:kan ikke åbne filen på linje

  4. Ugyldigt fælles bruger- eller rollenavn