Próżnia, puste miejsce, w bazie pole wypełnione NULL - w funkcjach agregujących

Excel - podsumowanie sprzedaży za miesiące od stycznia do maja wynosi 1500.
A gdyby te dane były w bazie danych i byśmy uruchomili poniższą kwerendę:


SELECT SUM(SPRZEDAZ) FROM TABELA;

To jaki będzie jej wynik?


Wynik w SQL także będzie 1500. 
Funkcje agregujące (np. suma, średnia) w EXCEL oraz SQL pomijają pola niewypełnione, puste, NULL. 
W EXCEL oraz SQL jeżeli funkcja agregująca (np. suma, średnia) ma widzieć wartość 0 to musi taka być wprowadzona, czyli w przydadku EXCEL wpisz 0 w pola tabeli a w SQL użyj NVL, tj. w naszym przykładzie będzie to NVL (SPRZEDAZ, 0).
Zapis NVL (SPRZEDAZ, 0) spowoduje zamianę wartosci NULL na 0, ale można na inną wartość. 
Czyli pełny zapis w SQL będzie:
SELECT SUM( NVL(SPRZEDAZ,0)) FROM TABELA;




Brak komentarzy:

Prześlij komentarz