Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 15127|Válasz: 0

[Forrás] IFNULL, NULLIF és ISNULL használat

[Linket másol]
Közzétéve 2018. 05. 11. 13:37:59 | | |
Az isnull, ifnull, nullif használata a következő:

Az isnull(expr) használataHa expr null, akkor isnull() 1-es értéket ad vissza, különben 0-t ad.
MySQL> Select ISNULL(1+1);
-> 0
MySQL> Select ISNULL(1/0);
-> 1
Nullérték-összehasonlításokhoz = használata általában helytelen.

Az isnull() függvény néhány olyan tulajdonságot osztogat, mint az is null összehasonlító operátor. Lásd a megjegyzést nullról.

Az IFNULL(expr1,expr2) használata:

Ha expr1 nem NULL, akkor az IFNULL() visszatérési értéke expr1;
Ellenkező esetben expr2 értéket ad. Az IFNULL() vagy egy számot, vagy egy stringet ad vissza, attól függően, hogy milyen kontextusban használják.

mysql> IFNULL(1,0) VÁLASSZA;
-> 1
MySQL > SELECT IFNULL(NULL,10);
-> 10
mysql> IFNULL(1/0,10) VÁLASSZA;
-> 10
mysql> SELECT
IFNULL(1/0, 'igen');

-> 'igen'

Az IFNULL(expr1,expr2) alapértelmezett eredményértéke a két kifejezés közül a "általánosabb" sorrendben, a STRING, REAL vagy
EGÉSZ SZÁM。 Tegyük fel egy olyan helyzetet, ahol egy kifejezésalapú táblának, vagyis a MySQL-nek az IFNULL() visszatérő értékét egy ideiglenes táblában kell tárolnia belső memóriában:
CREATE TABLE tmp SELECT IFNULL(1,'test') tesztként;
Ebben a példában a tesztoszlop CHAR(4) típusú.
A NULLIF(expr1,expr2) használata:  
If expr1
= expr2 igaz, akkor a visszaküldési érték NULL, különben a visszatérítési érték expr1. Ez ugyanaz, mint CASE WHEN expr1 = expr2
Akkor a null else, expr1 END ugyanaz.
mysql> SELECT
NULLIF(1,1);

-> NULL
MYSQL> SELECT NULLIF(1,2);
-> 1
Ha a paraméterek nem egyenlőek, akkor a MySQL kétszer kapja az expr1 értéket.






Előző:Szerver CPU hardver teljesítménytesztje
Következő:Amikor a MySQL-t több mint egymillió adatszint feldolgozására használjuk, van néhány józan ész, amit ismerni kell
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com