Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak w SQL można grupować według zakresów?

Żadna z najwyżej głosowanych odpowiedzi nie jest prawidłowa w SQL Server 2000. Być może używali innej wersji.

Oto poprawne wersje obu na 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

lub

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przechowywanie plików w SQL Server

  2. Jak kopiować bazy danych SQL Server z jednego wystąpienia do drugiego?

  3. Czy każda tabela użytkowników powinna mieć indeks klastrowy?

  4. Co nowego w SQL Server 2019?

  5. Jak uzyskać pierwszy i ostatni dzień poprzedniego miesiąca (ze znacznikiem czasu) w SQL Server