Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Еквивалент на Sql сървър на агрегатна функция COUNTIF

Можете да използвате SUM (не COUNT !) в комбинация с CASE израз, като този:

SELECT SUM(CASE WHEN myColumn=1 THEN 1 ELSE 0 END)
FROM AD_CurrentView

Забележка:в моя собствен тест NULL s не са били проблем, въпреки че това може да зависи от средата. Можете да обработвате нули като:

SELECT SUM(CASE WHEN ISNULL(myColumn,0)=1 THEN 1 ELSE 0 END)
FROM AD_CurrentView


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. как да разберете състоянието на изпълняваните в момента задачи

  2. Посоченият модул не може да бъде намерен. Изключение от HRESULT:0x8007007E

  3. Скриптирайте всички данни от базата данни на SQL Server

  4. FREETEXTTABLE винаги има ранг 0

  5. Промяна на позицията на NULL при сортиране