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

SELECT SUM zwraca wiersz, gdy nie ma rekordów

„Spodziewałem się otrzymać komunikat „Nie znaleziono rekordów”, gdy nie było żadnych rekordów, ale zamiast tego otrzymuję wynik zerowy”.

Następnie wykonaj

SELECT SUM(dummy) FROM DUAL WHERE 1=2 HAVING COUNT(*) > 0

Oznacza to, że określ, że chcesz zwrócić podsumowanie tylko tam, gdzie były brane pod uwagę wiersze.

SELECT SUM(dummy) FROM DUAL WHERE 1=2 HAVING SUM(dummy) IS NOT NULL

jest podobny, ale funkcja COUNT(*) zwróciłaby wiersz podsumowania, gdyby istniały tylko wiersze, dla których wartość fikcyjna miała wartość null, podczas gdy ta ostatnia nie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Uruchom szachownicę

  2. uzyskać liczbę unikalnych wartości bez oddzielania wartości należących do tego samego bloku wartości

  3. Pobieranie ORA-03115:nieobsługiwany typ danych sieciowych lub błąd reprezentacji podczas pobierania tablicy varchar z anonimowego pl/sql

  4. Wybierz pierwszy wiersz każdej grupy w sql

  5. Łączenie ciągów zagregowanych w Oracle 10g