Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak policzyć wiersze zawierające wartości niezerowe w sql

Wygląda na to, że wystarczy dodać WHERE klauzula:

SELECT 
      round(COUNT(dmd_1wk),2) AS NBR_ITEMS_1WK
FROM table
WHERE dmd_1wk <> 0;

Jeśli chcesz liczyć zarówno wartości niezerowe, jak i zerowe, możesz użyć czegoś takiego:

SELECT 
   round(COUNT(case when dmd_1wk <> 0 then dmd_1wk end),2) AS NBR_ITEMS_1WK_NonZero,
   round(COUNT(case when dmd_1wk = 0 then dmd_1wk end),2) AS NBR_ITEMS_1WK_Zero
FROM table;


  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 Oracle SELECT FROM dual działa z wieloma polami?

  2. Oracle:Lewy połącz bardzo dużą tabelę i ogranicz połączone wiersze do jednego z największą wartością pola

  3. Kopiowanie wiersza w tej samej tabeli bez konieczności wpisywania ponad 50 nazw kolumn (przy zmianie 2 kolumn)

  4. Czy operator IN może używać symboli wieloznacznych LIKE (%) w Oracle?

  5. Powielanie pracownika w tabeli z powodu zmiany w dziale