SQL | Funcții NULL

SQL | Funcții NULL

În baza de date, valorile nule servesc ca substituenți pentru datele care lipsesc sau nu sunt disponibile. o valoare nulă este un tip de date flexibil care poate fi plasat în coloana oricărui tip de date, inclusiv string int blob și tipuri de date CLOB. Nu este o componentă a niciunui tip de date specific. Valorile nule sunt utile la curățarea datelor înainte de analiza exploratorie.

Valorile nule ne ajută să eliminăm ambiguitatea datelor. Valorile nule sunt utile și pentru menținerea unui tip de date consecvent pe coloană. Vom afla despre necesitatea și liniile directoare pentru utilizarea valorilor Null în acest articol. Acum să folosim exemple pentru a încerca să înțelegem mai bine valorile nule și funcțiile nule în SQL .

Câteva puncte cheie privind utilizarea NULL în SQL:

    Comparație cu NULL: Comparații cu NULL folosind operatori de comparație obișnuiți precum „=” „ <>' ' <' '>' nu produc adevărat sau fals, ci mai degrabă produc un rezultat de necunoscut sau NULL. În schimb, trebuie să utilizați operatorii IS NULL sau IS NOT NULL pentru a verifica valorile NULL.  Gestionarea NULL în expresii: Când se efectuează operații aritmetice sau alte operații care implică valori NULL, rezultatul devine de obicei NULL. De exemplu, orice operație aritmetică care implică un operand NULL va avea ca rezultat un rezultat NULL. Agregarea valorilor NULL: Cele mai multe funcții agregate din SQL, cum ar fi SUM AVG COUNT etc. ignoră valorile NULL la calcularea rezultatelor. Cu toate acestea, există unele funcții agregate, cum ar fi COUNT (*), care iau în considerare valorile NULL.  Indexare și NULL: Unele sisteme de baze de date tratează valorile NULL în mod diferit când vine vorba de indexare. 
  1. Este important să consultați documentația specifică a sistemului dumneavoastră de management al bazei de date pentru a înțelege cum sunt tratate valorile NULL în structurile de index. Capcane potențiale: prezența valorilor NULL poate introduce complexitate și capcane potențiale la interogarea sau manipularea datelor. Este nevoie de o analiză atentă pentru a trata valorile NULL în mod corespunzător în interogările SQL pentru a evita rezultate neașteptate sau incorecte.

De ce avem nevoie de valori NULL?

Funcțiile nule sunt necesare pentru a efectua operații pe valorile nule stocate în baza de date. Cu NUL valori putem efectua operații care identifică clar dacă valoarea este nulă sau nu. Cu această capacitate de a recunoaște datele nule, pot fi efectuate operațiuni similare cu metodele de îmbinare ale SQL.

Următoarele sunt funcțiile NULL definite în SQL:

ISNULL()

Funcția ISNULL are utilizări diferite în SQL Server și MySQL. În SQL Server, funcția ISNULL() este utilizată pentru a înlocui valorile NULL. 

Sintaxă:

SELECTAȚI coloana(ele) ISNULL(nume_coloană valoare_de_înlocuit)

FROM table_name;

Exemplu : Luați în considerare următorul tabel al angajaților

SQL | Funcții NULL 

Găsiți suma salariului tuturor angajaților dacă Salariul oricărui angajat nu este disponibil (sau valoarea NULL) utilizați salariul ca 10000.

Interogare:

SELECT SUM(ISNULL(Salary 10000) AS Salary FROM Employee; 

Ieșire

SQL | Funcții NULL 

În MySQL funcția ISNULL() este folosită pentru a testa dacă o expresie este NULL sau nu. Dacă expresia este NULL, returnează TRUE, altfel FALSE. 

Sintaxă:

SELECTAȚI coloana(ele)

FROM table_name

WHERE ISNULL(nume_coloană);

Exemplu : Luați în considerare următorul tabel al angajaților

SQL | Funcții NULL 

Preluați numele tuturor angajaților al căror salariu este disponibil în tabel (nu NULL).

Interogare:

SELECT Name FROM Employee WHERE ISNULL(Salary); 

Ieșire: 

SQL | Funcții NULL 

IFNULL()

Această funcție este disponibilă în MySQL și nu în SQL Server sau Oracle. Această funcție are două argumente. Dacă primul argument nu este NULL, funcția returnează primul argument. În caz contrar, se returnează al doilea argument. Această funcție este folosită în mod obișnuit pentru a înlocui valoarea NULL cu o altă valoare. 

Sintaxă:

SELECTAȚI coloana(ele) IFNULL(nume_coloană valoare_de_înlocuit)

FROM table_name;

Exemplu : Luați în considerare următorul tabel al angajaților

SQL | Funcții NULL 

 Găsiți suma salariului tuturor angajaților dacă Salariul oricărui angajat nu este disponibil (sau valoarea NULL) utilizați salariul ca 10000.

Interogare;

SELECT SUM(IFNULL(Salary 10000) AS Salary FROM Employee; 

Ieșire :

SQL | Funcții NULL 

COALESCE()

Funcția COALESCE din SQL returnează prima expresie non-NULL dintre argumentele sale. Dacă toate expresiile sunt evaluate ca nul, atunci funcția COALESCE va returna nul. 

Sintaxă :

SELECTAȚI coloana(ele) CAOLESCE(expresie_1....expresie_n)

FROM table_name;

Exemplu

Luați în considerare următorul tabel Contact_info 

SQL | Funcții NULL 

Preluați numele și numărul de contact ale fiecărui angajat.

Interogare:

SELECT Name COALESCE(Phone1 Phone2) AS Contact FROM Contact_info; 

Ieșire

SQL | Funcții NULL 

NULLIF()

Funcția NULLIF preia două argumente. Dacă cele două argumente sunt egale, atunci este returnat NULL. În caz contrar, primul argument este returnat. 

Sintaxă:

SELECTAȚI coloana(ele) NULLIF(expresie1 expresie2)

FROM table_name;

Exemplu : Luați în considerare următorul tabel de vânzări SQL | Funcții NULL

SELECT Store NULLIF(Actual Goal) FROM Sales; 

Ieșire

 

Concluzie

În acest articol am aflat ce sunt valorile nule și de ce ar trebui să le folosim. Acum știm că utilizarea valorilor NULL este fundamentală pentru bazele de date și se face astfel pentru a le păstra integritatea. În continuare, am aflat mai multe despre diferitele funcții care pot fi utilizate cu valori NULL. În concluzie, valoarea NULL în SQL reprezintă absența sau valoarea necunoscută pentru un anumit câmp de date. Este nevoie de o atenție specială atunci când scrieți interogări și expresii pentru a gestiona corect valorile NULL și pentru a evita potențialele capcane.

Creați un test