Contents

Jak policzyć wartości SQL NULL i NOT NULL w kolumnie?

Praca z wartościami NULL w SQL jest powszechnym wyzwaniem, przed którym staje każdy analityk danych i specjalista od baz danych. Dzieje się tak w szczególności dlatego, że praca z wartościami NULL może być przytłaczająca i myląca, co prowadzi do frustracji podczas analizy danych.

Ważne jest, aby docenić znaczenie zrozumienia wartości null w celu uzyskania precyzyjnych i wszechstronnych wglądów w dane. W tym artykule zagłębimy się w polecenia SQL i ich zastosowanie w ustalaniu liczby zarówno wartości null, jak i non-null.

Co to jest wartość SQL NULL?

Wartość null oznacza brak jakiejkolwiek wartości i nie należy jej mylić z brakiem danych reprezentowanych przez zera lub spacje.

W związku z tym użycie konwencjonalnych operatorów porównania, takich jak =, <, > i <> jest niewłaściwe w przypadku zastosowania do wspomnianej jednostki. Jakakolwiek próba zrobienia tego przyniesie niezdefiniowany wynik.

Rozważmy koncepcję wartości NULL jako niezajętego miejsca w rekordzie bazy danych, które jest tworzone, gdy informacje nie zostały dostarczone dla określonego pola podczas jego tworzenia. Ten brak informacji może wystąpić w dowolnej kolumnie typu danych w całej strukturze tabeli.

Aby zilustrować tę koncepcję, wygenerujemy tabelę SQL wykorzystującą następującą składnię:

 CREATE TABLE Employee (

 FirstName VARCHAR(50),

 LastName VARCHAR(50),

 PhoneNum VARCHAR(15),

 Salary FLOAT

);



INSERT INTO Employee (FirstName, LastName, PhoneNum, Salary)

VALUES

  ('Maxwell', 'Ayomide', '812-345-6789', 150000.00),

 ('David', 'Tosin', NULL, 450000.00),

 ('Eben', 'Teniola', '912-345-6789', 590000.00),

 ('Kenneth', 'Olisa', '809-456-8732', NULL),

 ('Esther', 'Oge', NULL, NULL);

/pl/images/inner-images-muo-20.jpg

Możesz również zaktualizować wartości null w tabeli, korzystając z przyjaznego dla użytkownika polecenia SQL znanego jako instrukcja UPDATE. Składnia tego polecenia jest podana poniżej.

 UPDATE Employee
SET FirstName = 'Esther'
WHERE Salary = 200000; 

Aby wyświetlić wynik, uruchom:

 SELECT * FROM Employee;

/pl/images/inner-images-muo-21.jpg

Kiedy wartości SQL NULL są przydatne?

W SQL wartość null może być stosowana w wielu kontekstach:

W przypadkach, gdy informacje dotyczące konkretnego fragmentu danych nie zostały zarejestrowane, ponieważ są albo nieosiągalne, albo nie zostały jeszcze odkryte,

W niektórych sytuacjach, w których podane informacje nie odnoszą się do konkretnej osoby lub podmiotu, do którego się odnoszą, na przykład podczas odpowiadania na ankiety i pytania dotyczące spraw osobistych, takich jak posiadanie dzieci, mogą wystąpić przypadki niekompletnych lub brakujących odpowiedzi reprezentowanych przez wartości null.

Co to jest warunek SQL IS NULL?

Jednym z podstawowych poleceń SQL, które każdy biegły programista powinien znać, jest instrukcja “IS NULL”, która służy jako niezbędne narzędzie do identyfikacji wartości null w określonej kolumnie podczas operacji pobierania danych.To potężne polecenie skutecznie odfiltrowuje wiersze zawierające wartości null, umożliwiając użytkownikom skupienie się na wynikach innych niż null i przeprowadzenie bardziej ukierunkowanej analizy lub przetwarzania.

 SELECT FirstName, LastName, PhoneNum

FROM Employee

WHERE PhoneNum IS NULL; 

Powyższe zapytanie ma na celu pobranie wszystkich instancji wartości null w kolumniePhoneNumcolumn.

/pl/images/inner-images-muo-22.jpg

Co to jest warunek SQL IS NOT NULL?

Instrukcja SQL IS NOT NULL służy jako zaprzeczenie polecenia SQL IS NULL, wyrażając warunek wykluczający wiersze, w których określona kolumna nie ma wartości lub zawiera wartości null.

Niniejsze zapytanie dotyczy operacji, która sprawdza brak lub obecność wartości null w wyznaczonym zestawie danych. W związku z tym wszelkie wpisy zawierające istotne informacje zostaną wyliczone, podczas gdy te wykazujące charakterystykę zerową zostaną wykluczone z wyników generowanych przez kryteria wyszukiwania.

 SELECT FirstName, LastName, PhoneNum

FROM Employee

WHERE PhoneNum IS NOT NULL; 

To zapytanie pobierze wszystkie wartości inne niż null w kolumniePhoneNum.

/pl/images/inner-images-muo-23.jpg

Jak policzyć wartości SQL NULL w kolumnie?

Funkcja COUNT() służy jako podstawowe narzędzie do ilościowego określania liczby rekordów w określonej kolumnie lub wyrażeniu w danej tabeli SQL, okazując się szczególnie przydatna podczas procesu badania i manipulowania danymi poprzez wykorzystanie podzapytań SQL i tabel tymczasowych.

Wykorzystaj poniższe zapytanie, aby określić całkowitą liczbę wartości null w kolumnie “PhoneNum”.

 SELECT COUNT(*) AS [Total Number of NULL]

 FROM Employee

WHERE PhoneNum IS NULL 

To zwróci:

/pl/images/inner-images-muo-3-2.jpg

Jak policzyć wartości NOT NULL w kolumnie?

Wykorzystaj implementację ograniczenia NOT NULL, aby ustalić liczbę instancji w kolumnie PhoneNum, w których takie unieważnienie nie jest dozwolone.

 SELECT COUNT(PhoneNum) AS [Total Number of Non-NULL Values]

 FROM Employee

WHERE PhoneNum IS NOT NULL 

To zwróci:

/pl/images/inner-images-muo-4-2.jpg

Można również wykorzystać to zapytanie do wyświetlenia wyniku w formacie tabelarycznym.

 SELECT SUM(CASE WHEN PhoneNum is null THEN 1 ELSE 0 END)

 AS [Number Of Null Values],

COUNT(PhoneNum) AS [Number Of Non-Null Values]

FROM Employee 

/pl/images/inner-images-muo-25.jpg

W tym konkretnym zapytaniu wykorzystanie instrukcji warunkowych CASE i IS NULL umożliwiło kategoryzację wartości null obecnych w kolumnie PhoneNum. Te wartości null zostały następnie włączone i zachowane w nowej, specjalnie wyznaczonej kolumnie znanej jako “Liczba wartości null”.

Policz wartości NULL i kontynuuj analizę

Pomimo zniechęcającej obecności wartości null, w rzeczywistości można nimi zarządzać za pomocą prostych poleceń SQL.Korzystając z funkcji COUNT(), można łatwo określić liczbę zarówno zerowych, jak i niepustych punktów danych w systemie bazy danych.

Dzięki kompleksowemu zrozumieniu poleceń SQL, użytkownik jest w stanie wykorzystać te umiejętności w szeregu aplikacji i skutecznie zbadać swój zbiór danych przy minimalnym wysiłku.