Tulosta      Avaa käytönaikaisen ohjeen PDF-versio


Edellinen aihe

Seuraava aihe

Case-lausekkeet

CASE-lausekkeet ovat rakennuspalikoita, joita käytetään luotaessa ehdollisia lausekkeita, jotka voivat muodostaa eri tuloksia eri sarakearvoilla.

Case (switch)

CASE-lausekkeen tätä muotoa kutsutaan myös CASE (Lookup) -muodoksi. Siinä tarkistetaan lausekkeen expression1 arvo ja sitten WHEN-lausekkeet. Jos expression1 vastaa jotain WHEN-lauseketta, sille määritetään arvo THEN-lausekkeen mukaisesti.

Jos lauseke expression1 vastaa lauseketta useissa WHEN-lausekkeissa, määritetään vain ensimmäistä vastaavuutta seuraava lauseke.

Jos mikään WHEN-lausekkeista ei vastaa lauseketta, sille määritetään ELSE-lausekkeessa määritetty arvo. Jos ELSE-lausekkeita ei ole määritetty, arvoksi määritetään NULL.

Katso myös Case (If) -lauseke.

Syntaksi:

CASE expression1

WHEN-lauseke THEN-lauseke

{WHEN-lauseke... THEN-lauseke...}

ELSE expression

END

Jossa:

CASE

Aloittaa CASE-lausekkeen. Sen jälkeen pitää tulla lauseke sekä vähintään yksi WHEN- ja THEN-lauseke, valinnainen ELSE-lauseke ja END-avainsana.

WHEN

Määrittää ehdon, jonka on täytyttävä.

THEN

Määrittää määritettävän arvon, jos WHEN-lauseke täyttyy.

ELSE

Määrittää määritettävän arvon, jos yksikään WHEN-ehto ei täyty. Jos se puuttuu, oletetaan, että ELSE NULL.

END

Lopettaa CASE-lausekkeen.

Esimerkki

CASE Score-par

WHEN -5 THEN 'Birdie Par 6 -väylällä'

WHEN -4 THEN 'Taitaa olla Tiger asialla'

WHEN -3 THEN 'Kolme alle parin'

WHEN -2 THEN 'Kaksi alle parin'

WHEN -1 THEN 'Birdie'

WHEN 0 THEN 'Par'

WHEN 1 THEN 'Bogey'

WHEN 2 THEN 'Tupla-bogey'

ELSE 'Tripla-bogey tai huonompi'

END

Edellisessä esimerkissä WHEN-lausekkeiden pitää heijastaa yhtäsuuruutta; WHEN-ehto

WHEN <0 THEN 'Alle parin'

ei kelpaa, koska vertailuoperaattoreita ei sallita.

Case (If)

Case-lausekkeen tässä muodossa arvioidaan jokainen WHEN-ehto, ja ehdon täyttyessä määritetään vastaavan THEN-lausekkeen mukainen arvo.

Jos yksikään WHEN-lausekkeista ei täyty, määritetään ELSE-lausekkeen määrittämä oletusarvo. Jos ELSE-lausekkeita ei ole määritetty, arvoksi määritetään NULL.

Katso myös Case (switch) -lauseke.

Syntaksi:

CASE

WHEN request_condition1 THEN expression1

{WHEN request_condition2 THEN expression2}

{WHEN request_condition... THEN-lauseke...}

ELSE expression

END

Jossa:

CASE

Aloittaa CASE-lausekkeen. Sen jälkeen pitää tulla lauseke sekä vähintään yksi WHEN- ja THEN-lauseke, valinnainen ELSE-lauseke ja END-avainsana.

WHEN

Määrittää ehdon, jonka on täytyttävä.

THEN

Määritettävä arvo WHEN-lausekkeen täyttyessä.

ELSE

Määrittää arvon, jos yksikään WHEN-ehto ei täyty. Jos se puuttuu, oletetaan, että ELSE NULL.

END

Lopettaa CASE-lausekkeen.

Esimerkki

CASE

WHEN score-par < 0 THEN 'Alle Parin'

WHEN score-par = 0 THEN 'Par'

WHEN score-par = 1 THEN 'Bogie'

WHEN score-par = 2 THEN 'Tupla-bogey'

ELSE 'Tripla-bogey tai huonompi'

END

Toisin kuin CASE-lausekkeen kytkinmuodossa, If-muodossa WHEN-lausekkeissa voidaan käyttää vertailuoperaattoreita; WHEN-ehto

WHEN <0 THEN 'Alle parin'

kelpaa.


Julkaistu Elokuu 2018 Copyright © 2005, 2018, Oracle ja/tai sen tytär-, sisar- tai osakkuusyhtiöt. Kaikki oikeudet pidätetään. Legal Notices.