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

zapytanie do wyboru liczby rekordów dla każdego roku

Prosta metoda na uzyskanie wszystkich lat w danych — nawet jeśli nie spełniają one warunków where klauzula -- jest użycie agregacji warunkowej:

select year(fact_date) as yyyy,
       sum(case when stat = 1 and id = 16 then 1 else 0 end) as cnt_16
from tbl_fact
group by year(fact_date)
order by yyyy;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zwrócić wszystkie wyłączone ograniczenia kontrolne w programie SQL Server (przykład T-SQL)

  2. SQL Server 2016 — wprowadzenie do bazy danych Stretch

  3. Odwróć/Zdmuchnij GROUP BY

  4. Uzyskaj identyfikator ostatnio wstawionego rekordu — Access DAO, ODBC, SQL Server 2008 Identity Field

  5. Koncepcje projektowania bazy danych za pomocą programu SQL Server Management Studio (SSMS) część 1