1.1 Feltételes függvények listája
Az SQL nyelvnek van egy listája a függvényekből, amelyek némileg hasonlítanak a Java if-else
operátorához switch
.
Összesen 4 ilyen funkció van:
Funkciók | Leírás | |
---|---|---|
1 | ÜGY | analóg kapcsoló |
2 | HA() | A hármas operátor analógja vagy if-else |
3 | IFNULL() | az if-else analógja |
4 | NULLIF() | az if-else analógja |
Az utolsó három SQL-ben függvényként van ábrázolva, és CASE
teljes értékű operátor, ezért a legvégén külön fogjuk megvizsgálni.
1.2 IF() függvény
Az SQL-ben egy függvény IF()
némileg hasonlít a Java háromtagú operátorához. SQL nyelven 3 paramétert vesz igénybe, és így néz ki:
IF (condition, true, false)
Három kifejezést kell átadni a függvénynek IF
:
- olyan állapot, amelyet az igazságra tesztelnek;
- egy kifejezés, amelyet akkor ad vissza, ha a feltétel igaz;
- egy kifejezés, amely akkor jelenik meg, ha a feltétel hamis.
Az alábbiakban néhány példát mutatok be, hogy könnyebb legyen megérteni, hogyan működik:
Kérés | Eredmény | |
---|---|---|
1 | HA KIVÁLASZTÁS( 1>2,2,3 ) | 3 |
2 | SELECT IF( 1<2 , 'igen', 'nem') | 'Igen' |
3 | SELECT IF( STRCMP('teszt', 'teszt1' ), 'nem', 'igen') | 'nem' |
1.3 IFNULL() és NULLIF() függvény
A funkciónak két módosítása is van IF()
.
Az első módosítás a függvény IFNULL()
. Csak két érték kell hozzá:
IFNULL (expression 1, expression 2)
Ha a kifejezés1 nem egyenlő a -val , akkor a függvény a kifejezés1-etNULL
adja vissza . Ha kifejezés1 , akkor a függvény a kifejezés2-t adja vissza . A lényeg az alapértelmezett érték helyettesítése, amikor a mező egyenlő a -val . IS NULL,
NULL
A függvény második módosítása IF
a függvény NULLIF()
, amely szintén két értéket vesz fel:
NULLIF (expression 1, expression 2)
Ellenkező irányban működik:
- ha a kifejezés1 egyenlő a kifejezés2-vel , akkor a függvény visszatér
NULL
; - ha a kifejezések nem egyenlőek, akkor az 1 kifejezést ad vissza .
GO TO FULL VERSION