Isnullin, ifnullin, nullifin käyttö on seuraava:
Isnull(expr) käyttö:Jos expr on null, niin isnull() palauttaa arvon 1, muuten se palauttaa 0. MySQL> valitse isnull(1+1); -> 0 mySQL> valitse isnull(1/0); -> 1 Null-arvojen vertailuun = käytetään yleensä väärin.
Isnull()-funktiolla on joitakin samoja ominaisuuksia kuin is null -vertailuoperaattorilla. Katso huomautus on nolla.
IFNULL(expr1,expr2) käyttö:
Jos expr1 ei ole NULL, IFNULL():n palautusarvo on expr1; Muussa tapauksessa se palauttaa arvon expr2. IFNULL() palauttaa joko numeron tai merkkijonon, riippuen kontekstista, jossa sitä käytetään.
mysql> VALITSE IFNULL(1,0); -> 1 mysql> VALITSE IFNULL(NULL,10); -> 10 mysql> VALITSE IFNULL(1/0,10); -> 10 mysql> SELECT IFNULL(1/0, 'kyllä');
-> 'kyllä'
IFNULL(expr1,expr2) oletustulosarvo on kahdesta lausekkeesta "yleisempi", järjestyksessä STRING, REAL tai KOKONAISLUKU。 Oletetaan, että lausekepohjainen taulu tai MySQL joutuu tallentamaan IFNULL():n palautusarvon väliaikaiseen taulukkoon sisäisessä muistissa: CREATE TABLE tmp SELECT IFNULL(1,'test') AS test; Tässä esimerkissä testisarake on tyyppiä CHAR(4).
NULLIF(expr1,expr2) käyttö: Jos expr1 = expr2 on totta, jolloin palautusarvo on NULL, muuten palautusarvo on expr1. Tämä on sama kuin TAPAUS KUN expr1 = expr2 SITTEN NULL ELSE EXPR1 LOPPU ON SAMA. mysql> SELECT NULLIF(1,1);
-> NULL mysql> VALITSE NULLIF(1,2); -> 1 Jos parametrit eivät ole yhtä suuret, MySQL saa arvon expr1 kahdesti.
|