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

Przypadek Kiedy Distinct value następnie zsumuj inną wartość?

Możesz użyć COUNT(DISTINCT ) na wyjściu CASE wyrażenie. Na przykład, aby policzyć liczbę odrębnych AcctNo_Pkey które mają [amount] < 1500 gdzieś w zagregowanym wyniku, możesz użyć tego:

COUNT(DISTINCT CASE WHEN [amount] < 1500 THEN AcctNo_PKey END)

Co możesz zobaczyć w działaniu w tym minimalnym przykładzie sqlfiddle




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Złożony klucz podstawowy + klucz obcy

  2. Używanie instrukcji CASE wewnątrz klauzuli IN

  3. Zmiana nazwy bazy danych SQL

  4. SQL Server 2008 do SQL Server Compact Edition?

  5. Nulls i instrukcja MERGE:Muszę ustawić wartość na nieskończoność. Jak?