Како пребројати СКЛ вредности НУЛЛ и НОТ НУЛЛ у колони

Rad sa NULL vrednostima u SQL-u predstavlja uobičajen izazov za svakog analitičara podataka i stručnjaka za baze podataka. Razlog leži u tome što rad sa NULL vrednostima može biti komplikovan i zbunjujući, što može dovesti do frustracije tokom procesa analize podataka.

Međutim, ključno je razumeti prirodu ovih NULL vrednosti i njihov značaj kako biste stekli tačan i sveobuhvatan uvid u podatke. Ovaj tekst će istražiti SQL naredbe i njihovu primenu u brojanju NULL i NOT NULL vrednosti.

Šta je SQL NULL vrednost?

NULL vrednost označava odsustvo vrednosti; to nije ni nula, ni prazan prostor.

Zbog toga se standardni operatori poređenja, poput =, <, > i <>, ne mogu koristiti na njoj. Ako se ipak primene, rezultat će biti NEPOZNAT.

Zamislite NULL vrednost kao polje koje je ostavljeno praznim prilikom kreiranja zapisa. Možete stvoriti tabelu i dodati novu kolonu bez unosa vrednosti. Takvo polje će imati NULL vrednost. NULL vrednosti se mogu umetati u kolone bilo kog tipa podataka.

Da biste ilustrovali ovo, kreirajte novu SQL tabelu koristeći sledeću sintaksu:

 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);

Takođe možete ažurirati NULL vrednosti u tabeli koristeći SQL naredbu za ažuriranje, `UPDATE`. Da biste to uradili, koristite sledeću sintaksu:

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

Da biste videli rezultat, pokrenite:

 SELECT * FROM Employee;

Kada su SQL NULL vrednosti korisne?

NULL vrednost se može koristiti u različitim situacijama u SQL-u:

  • Kada podaci nisu dostupni ili su nepoznati u trenutku unosa.
  • Kada se podaci ne odnose na određeni entitet. Na primer, u anketi, pitanje koje od učesnika traži da označe polje ako imaju decu, može imati neke NULL vrednosti.

Šta je uslov SQL IS NULL?

SQL `IS NULL` naredba je jedna od ključnih SQL naredbi koju bi svaki programer trebao da zna. Ova naredba se koristi za proveru NULL vrednosti, i najefikasnija je pri traženju NULL vrednosti. Ova naredba vraća sve redove koji sadrže NULL vrednosti u koloni navedenoj u vašem upitu.

 SELECT FirstName, LastName, PhoneNum
FROM Employee
WHERE PhoneNum IS NULL;

Ovaj upit će vratiti sve NULL vrednosti u koloni `PhoneNum`.

Šta je uslov SQL IS NOT NULL?

SQL `IS NOT NULL` naredba je suprotna naredbi SQL `IS NULL`.

Ova naredba proverava vrednosti koje nisu prazne (NOT NULL vrednosti). Dakle, ona će uvek vratiti sve redove u koloni koji imaju vrednost i isključiće sve NULL vrednosti iz kolone navedene u vašem upitu.

 SELECT FirstName, LastName, PhoneNum
FROM Employee
WHERE PhoneNum IS NOT NULL;

Ovaj upit će vratiti sve NOT NULL vrednosti u koloni `PhoneNum`.

Kako prebrojati SQL NULL vrednosti u koloni?

Naredba `COUNT()` se koristi za brojanje. Ovo je praktična naredba pri analizi podataka u SQL tabelama i pri radu sa SQL podupitima i privremenim tabelama.

Koristite ovaj upit da biste prebrojali broj NULL vrednosti u koloni `PhoneNum`.

 SELECT COUNT(*) AS [Total Number of NULL]
FROM Employee
WHERE PhoneNum IS NULL

Ovo će vratiti:

Kako prebrojati vrednosti koje nisu NULL u koloni?

Koristite naredbu `NOT NULL` da prebrojite broj vrednosti koje nisu NULL u koloni `PhoneNum`.

 SELECT COUNT(PhoneNum) AS [Total Number of Non-NULL Values]
FROM Employee
WHERE PhoneNum IS NOT NULL

Ovo će vratiti:

Takođe možete koristiti ovaj upit da biste prikazali rezultate u tabeli.

 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

U ovom upitu, naredbe `CASE` i `IS NULL` se koriste da klasifikuju NULL vrednosti u koloni `PhoneNum` kao 1. Ta vrednost se sabira i čuva u novoformiranoj koloni „Number Of Null Values“.

Prebrojite NULL vrednosti i nastavite sa analizom

Bez obzira na to koliko NULL vrednosti mogu delovati zastrašujuće, rad sa njima je zapravo jednostavan. Korišćenjem funkcije `COUNT()`, možete prebrojati svoje NULL i NOT NULL vrednosti sa samo nekoliko redova SQL koda.

Kada se upoznate sa SQL naredbama, možete ih primeniti u raznim situacijama i analizirati svoje podatke bez poteškoća.