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-elseoperá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 CASEteljes é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 IFa 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 .