SQL-i operaator 'ei ole null'.

Sql I Operaator Ei Ole Null



SQL-is saame kasutada operaatorit IS NOT NULL, et filtreerida välja tulemused andmebaasi tabelist, kus konkreetse veeru väärtus ei ole null. See võib aidata tagada, et saate puhtad andmed, mis ei sisalda puuduvaid väärtusi, mis võivad põhjustada probleeme, eriti funktsioonides, mis ei käsitle NULL-väärtusi.

NULL väärtus viitab andmete puudumisele, mis ei sisalda tühje stringe, numbrilist nulli ega NaN-i.







Selles õpetuses õpime, kuidas saame kasutada operaatorit IS NOT NULL, et filtreerida välja tulemused, mis sisaldavad antud päringus NULL väärtusi.



Süntaks:

Saame väljendada tingimuse IS NOT NULL põhisüntaksi, nagu on näidatud järgmises koodilõigul:



VALI veerg1, veerg2, ...
FROM tabeli_nimi
KUS veeru_nimi EI OLE NULL;


Alustame märksõnaga “select” ja määrame tulemuste komplektis veerud, mida soovime tuua, millele järgneb tabeli nimi, millest andmeid tuua soovime.





Järgmisena kasutame WHERE-klauslit, et tutvustada konkreetsel veerul põhinevat andmete filtreerimist. Lõpuks täpsustame tingimuse, mille alusel soovime filtreerida.

Näide 1:

Vaatame mõningaid näiteid selle kohta, kuidas saame tulemuste välja filtreerimiseks kasutada tingimust IS NOT NULL.



Mõelge Sakila näidisandmebaasile, mis on tasuta allalaadimiseks saadaval ametlikul MySQL-i lehel.

Oletame, et soovime hankida nende klientide nimed, kelle 'perekonnanimi' ei ole võrdne nulliga. Selle saavutamiseks saame kasutada päringut, nagu on näidatud järgmises:

vali
*
alates
klient c
kus
perekonnanimi ei ole null;


Sel juhul tagastab päring kõik klienditabeli read, kus veeru 'perekonnanimi' väärtus ei ole null.

Näide 2: AND- ja OR-operaatorid

Tingimust IS NOT NULL saame kombineerida teiste tingimustega, kasutades tehteid JA ja VÕI. See loob granulaarsema filtreerimise.

Oletame näiteks, et tahame tuua kliendid, kelle 'perenimi' ei ole tühi ja kelle eesnimi on Nancy või Holly.

Saame kasutada päringut, nagu on näidatud järgmises:

VALI
Kliendi ID,
eesnimi,
perekonnanimi,
meili
FROM
klient
KUS
perekonnanimi EI OLE NULL
JA ( eesnimi = 'Nancy'
VÕI eesnimi = 'Holly' ) ;


Selles päringus kombineerime tingimuse IS NOT NULL operaatoritega AND ja OR, et filtreerida välja kirjed, kus perekonnanimi ei ole tühi või eesnimi võrdub Nancy või Hollyga.

Saadud väljund on järgmine:


Nagu näete, võimaldab see sihtandmetel täpsemat ja väiksemat filtreerimist.

Näide 3: koondfunktsioonide kasutamine

Funktsiooni IS NOT NULL saame kasutada ka koos SQL-i koondfunktsioonidega. Näiteks saame seda kasutada funktsiooniga count() antud veerus olevate mitte-nullväärtuste loendamiseks.

Oletagem näiteks, et tahame määrata mitte-null-e-posti aadressiga klientide arvu. Päringut saame kasutada järgmiselt:

VALI
COUNT ( Kliendi ID ) AS kokku
FROM
klient
KUS
email EI OLE NULL;


See peaks tagastama veerus olevate nullväärtuste arvu arvulise väärtusena järgmiselt:

kokku |
-----+
599 |

Järeldus

Selles õpetuses õppisime kõike SQL-i tingimuse IS NOT NULL kohta, et filtreerida nullväärtused antud tulemuste komplektist või andmebaasi tabelist. Samuti õppisime, kuidas saame luua keerukama filtreerimise, kombineerides tingimuse IS NOT NULL teiste tingimustega, kasutades operaatoreid AND ja OR.