Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 15127|Atsakyti: 0

[Šaltinis] IFNULL, NULLIF ir ISNULL naudojimas

[Kopijuoti nuorodą]
Paskelbta 2018-05-11 13:37:59 | | |
isnull, ifnull, nullif vartojimas yra toks:

isnull(expr) naudojimas:Jei išraiška yra neapibrėžta, tada isnull() grąžina reikšmę 1, kitu atveju grąžina 0.
mysql> pasirinkite isnull(1+1);
-> 0
mysql> pasirinkite isnull(1/0);
-> 1
Naudoti = nulinių reikšmių palyginimams paprastai yra neteisinga.

Funkcija isnull() turi tas pačias charakteristikas kaip ir is null palyginimo operatorius. Žr. pastabą apie yra neapibrėžta.

IFNULL(expr1,expr2) naudojimas:

Jei expr1 nėra NULL, grąžinama IFNULL() reikšmė yra expr1;
Kitu atveju jis grąžina reikšmę išraiška2. IFNULL() grąžina skaičių arba eilutę, atsižvelgiant į kontekstą, kuriame jis naudojamas.

mysql> PASIRINKITE IFNULL(1,0);
-> 1
mysql> PASIRINKITE IFNULL(NULL,10);
-> 10
mysql> PASIRINKITE IFNULL(1/0,10);
-> 10
mysql> PASIRINKTI
IFNULL(1/0;'taip');

-> "Taip"

Numatytoji IFNULL(expr1,expr2) rezultato reikšmė yra "bendresnė" iš dviejų išraiškų STRING, REAL arba
SVEIKASIS SKAIČIUS。 Tarkime, situacija, kai išraiška pagrįsta lentelė arba MySQL turi saugoti grąžinamą reikšmę IFNULL() laikinoje lentelėje vidinėje atmintyje:
CREATE TABLE tmp SELECT IFNULL(1,'test') AS test;
Šiame pavyzdyje bandymo stulpelis yra CHAR(4) tipo.
NULLIF(expr1,expr2) naudojimas:  
Jei išraiška1
= expr2 yra true, tada grąžinama reikšmė yra NULL, kitu atveju grąžinama reikšmė yra expr1. Tai tas pats, kas CASE WHEN expr1 = expr2
THEN NULL ELSE expr1 END yra tas pats.
mysql> PASIRINKTI
NULLIF(1,1);

-> NULL
mysql> PASIRINKITE NULLIF(1,2);
-> 1
Jei parametrai nėra vienodi, tada MySQL gauna reikšmę expr1 du kartus.






Ankstesnis:Serverio procesoriaus aparatinės įrangos našumo testas
Kitą:Naudojant "MySQL" daugiau nei milijonui duomenų lygių apdoroti, reikia žinoti keletą sveikų pojūčių
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com