Operátory pobočky v příkazu Vybrat. Konverze NVL pro různé datové typy laboratorní práce

Funkce to_char s čísly

Funkce konverzí dat do jiných datových typů. To_char (číslo) převádí číslo do textu. To_number převádí text na číslo.

Zvolte TO_CHAR (123) Od Dual vrátí řádek 123, vyberte možnost TO_NUMBER (`12345") od Dual vrátí číslo 12345.

Laboratorní práce. Změna formátu výstupních čísel

Změny ve formátu číselných hodnot v Oracle SQL, funkce to_char pracovat s číselnými hodnotami.

Úkol:

Napište požadavek, který by zobrazoval informace o názvu, příjmení a platu zaměstnanců z tabulky HR.Employmes ve formátu zobrazeném na Obr. 3.4-1:

Obr. 3.4. -1

Současně musí být data tříděna takovým způsobem, že řady pro zaměstnance s největším platem se nejprve zobrazí.

Poznámka:

Některé mzdy na obr. 3,4-1 byly změněny, takže se nemusí shodovat s vašimi hodnotami.

Rozhodnutí:

Vyberte First_Name jako "Name", LAST_NAME jako "příjmení", to_char (plat, "l999999999.99") jako "salát" z HR.Employees pořadí mzdy.

Funkce to_number a to_date

Funkce konverze řádků na data T_DATE (řetězec, formát). Možné formáty jsou již zvažovány výše, takže uvádím příklady použití této funkce. Příklady:

VYBRAT To_date (01.01.2010, `dd.mm.yyyy) Z. Dual vrátí datum `01.01.2010";

VYBRAT To_date (01.jan.2010, `dd.mon.yyyy) Z. Dual vrátí datum `01.01.2009";

VYBRAT To_date ("15-01-10", `dd-mm-yy") Z. Dual vrátí datum `01/15/2010."

Funkce konverze řádků na číselnou hodnotu To_Number (řetězec, formát). Nejběžnější formáty jsou uvedeny v tabulce, takže zvažte použití této funkce na příkladech. Příklady:

VYBRAT To_number (`100") Z. Dual vrátí číslo 100 Vybrat to_number (`0010.01," 9999d99) Z. Dual vrátí číslo 10.01;

VYBRAT To_number ("500 000", "999G999") Z. Dual vrátí číslo 500000.

RR Element v datech dat

Prvek formátu Datum a Čas RR je podobný prvku Datum Yy a formát času, ale poskytuje dodatečnou flexibilitu pro ukládání hodnot datu a v jiných stoletích. Prvek rr dat a časový formát umožňuje ukládat data 20. století v 21. století, což naznačuje pouze dvě poslední číslice roku.

Pokud jsou dva posledních několika údajů v běžném roce 00 až 49, vrátí se ročník v návratu stejné první dvě číslice jako v běžném roce.

Pokud se dvě poslední číslice běžného roku od 50 do 99, první 2 číslice vráceného roku jsou 1 více než v prvních dvou číslic běžného roku.

Pokud jsou dvě poslední čísla aktuálního roku 00 až 49, první 2 číslice vráceného roku jsou 1 menší než první 2 číslice běžného roku.

Pokud se dvě poslední postavy aktuálního roku od 50 do 99, má vrácený rok stejné první dvě číslice jako v běžném roce.

Funkce nvl

Funkce NVL se obvykle používá nejčastěji. Funkce přijímá dva parametry: nvl (expr1, exerg2). Pokud první parametr Expr1 není roven , pak funkce vrátí svou hodnotu. Pokud první parametr , pak funkce vrátí hodnotu druhého parametru exerg2.

Příklad: Vyberte NVL (dodavatel_city, N / A ") od dodavatelů:

Výkaz SQL vrátí N / "Pokud pole dodavatele obsahuje nulovou hodnotu. V opačném případě vrátí hodnotu Dodavatele.

Další příklad použití funkce NVL v Oracle / PlsQL je:

vyberte si Dodavateli, Dodavateli, Dodavatele, Dodavatele) od Dodavatele.

Tato aplikace SQL se vrátí jméno dodavatele. Pole, pokud. dodavatel. Obsahuje nulovou hodnotu. Jinak se vrátí dodavatel..

Příkaz: Použití funkce NVL v Oracle / PlsQL je: Vybrat NVL (Komise, 0) z prodeje;

Tento příkaz SQL se vrátil na 0, pokud komise Pole obsahuje nulovou hodnotu. Jinak by bylo možné vrátit komise pole.

Konverze NVL pro různé typy dat

Chcete-li převést neurčitou hodnotu na skutečnou funkci, použije se funkce NVL: Nvl ( exprese1, výraz 2), kde:

exprese1- Zdroj nebo vypočtená hodnota, která může být nejistá.

exprese2. - Hodnota, která je nahrazena namísto neurčitou hodnotu.

Poznámka: Funkce NVL lze použít k převodu libovolného typu dat, ale výsledek bude vždy stejný typ jako exprese1.

Konverze NVL pro různé typy:

Číslo - nvl. (numerický sloupec, 9).

Char nebo varchar2 - nvl (Symboly | Sloupec, "Není dostupný").

Laboratorní práce. Aplikace funkce NVL

NVL funkce pracovat s nejistými hodnotami v Oracle SQL.

Úkol:

Napište požadavek, který zobrazuje informace o názvu a příjmení zaměstnanců z tabulky HR.Employmes., Stejně jako nabídka Komise (Commiss Commiss Commission_PCT) pro zaměstnance. Zároveň pro ty zaměstnance, pro které není Komise definována, je nutné zobrazit hodnotu 0. Výsledek dotazu musí být uveden na Obr. 3.5-1.

Obr. 3.5. -1 (hodnoty začínají od řádku 51)

Rozhodnutí:

Kód příslušného požadavku může být:

Vyberte First_Name jako "Jméno", LAST_NAME jako "příjmení", NVL (Commission_PCT, 0) jako "sazba Komise" z HR.Employees.

Funkce nvl

Funkce NVL se obvykle používá nejčastěji. Funkce přijímá dva parametry: nvl (expr1, expr2). Pokud první parametr Expr1 není roven , pak funkce vrátí svou hodnotu. Pokud první parametr Null, pak funkce vrátí hodnotu druhého parametru Expr2.

Zvážit praktický příklad. Pole COMM v tabulce EMP může obsahovat hodnoty null. Při provádění dotazu formuláře:

Vyberte Empno, Ename, Comm, NVL (COMM, 0) NVL_COMM

Z Scott.emp.

hodnota null bude nahrazena nulou. Upozorňujeme, že v případě tvorby hodnoty pomocí funkce je přiřazen pseudonym. Výsledky požadavku budou:

EMPNO. Ename. Kaši. Nvl_comm.
7369 Kovář 0
7499 Allen 300 300
7521 Hlídka 500 500
7566 Jones 0
7654 Martin. 1400 1400
7698 Blake. 0
7782 Clark. 0
7839 Král. 0
7844 Soustružník 0 0
7900 James. 0
7902 Brod 0
7934 Mlynář 0

CEIL (n)

Funkce CEIL vrací nejmenší celé číslo, větší nebo rovnou počtu N. Například:

Zvolte Strop (100) X1, stropní (-100) X2, stropy (100.2) X3, stropy (-100.2) x4

Od Dual.

Funkce trunc (n [, m])

Funkce TRUNCT vrací číslo N zkrácené značkami M po desetinném bodě. Parametr M nesmí být uveden - v tomto případě n zkrácený celému.

Vyberte trunc (100.25678) x1, trunc (-100.25678) x2, trunc (100,99) x3,

Trunc (100.25678, 2) x4

Od Dual.

Funkce podepsat (n)

Funkce podepisování určuje počet čísel. Pokud n je pozitivní, pak se funkce vrátí 1. Pokud je záporný vrácen -1. Pokud je nula nula, pak se vrátí 0:

Zvolte Sign (100.22) X1, Sign (-100.22) X2, Sign (0) x3

Od Dual.

Zajímavým vlastností této funkce je možnost přenosu m rovné nule - nevystraňuje chyby rozdělení 0.

Funkce napájení (n, m)

Funkce napájení vytváří číslo n do stupně m. Stupeň může být zlomkový a negativní, což významně rozšiřuje schopnosti této funkce.

Zvolte napájení (10, 2) X1, napájení (100, 1/2) x2,

Napájení (1000, 1/3) x3, napájení (1000, -1/3) x4

Od Dual.

X1. X2. X3. X4.
100 10 10 0,1

V některých případech při volání této funkce může dojít k výjimce. Například:

Zvolte napájení (-100, 1/2) x2

Od Dual.

V tento případ Pokus je učiněn pro výpočet čtverečního kořene z negativních čísel, což bude mít za následek chybu ORA-01428 "Argument mimo rozsah".

Funkce SQRT (n)

Tato funkce se vrátí odmocnina z čísla n. Například:

Vyberte SQRT (100) x

Od Dual.

Funkce exp (n) a ln (n)

Funkce EXP PRENDS E do stupně n a funkce LN vypočítá přirozený logaritmus z n (s n, n musí být větší než nula). Příklad:

Zvolte exp (2) x1, ln (1) x2, ln (exp (2)) x3

Funkce nvl

Funkce NVL se obvykle používá nejčastěji. Funkce přijímá dva parametry: nvl (expr1, expr2). Pokud první parametr Expr1 není roven , pak funkce vrátí svou hodnotu. Pokud první parametr Null, pak funkce vrátí hodnotu druhého parametru Expr2.

Zvažte praktický příklad. Pole COMM v tabulce EMP může obsahovat hodnoty null. Při provádění dotazu formuláře:

Vyberte Empno, Ename, Comm, NVL (COMM, 0) NVL_COMM

Z Scott.emp.

hodnota null bude nahrazena nulou. Upozorňujeme, že v případě tvorby hodnoty pomocí funkce je přiřazen pseudonym. Výsledky požadavku budou:

EMPNO. Ename. Kaši. Nvl_comm.
7369 Kovář 0
7499 Allen 300 300
7521 Hlídka 500 500
7566 Jones 0
7654 Martin. 1400 1400
7698 Blake. 0
7782 Clark. 0
7839 Král. 0
7844 Soustružník 0 0
7900 James. 0
7902 Brod 0
7934 Mlynář 0

CEIL (n)

Funkce CEIL vrací nejmenší celé číslo, větší nebo rovnou počtu N. Například:

Zvolte Strop (100) X1, stropní (-100) X2, stropy (100.2) X3, stropy (-100.2) x4

Od Dual.

Funkce trunc (n [, m])

Funkce TRUNCT vrací číslo N zkrácené značkami M po desetinném bodě. Parametr M nesmí být uveden - v tomto případě n zkrácený celému.

Vyberte trunc (100.25678) x1, trunc (-100.25678) x2, trunc (100,99) x3,

Trunc (100.25678, 2) x4

Od Dual.

Funkce podepsat (n)

Funkce podepisování určuje počet čísel. Pokud n je pozitivní, pak se funkce vrátí 1. Pokud je záporný vrácen -1. Pokud je nula nula, pak se vrátí 0:

Zvolte Sign (100.22) X1, Sign (-100.22) X2, Sign (0) x3

Od Dual.

Zajímavým vlastností této funkce je možnost přenosu m rovné nule - nevystraňuje chyby rozdělení 0.

Funkce napájení (n, m)

Funkce napájení vytváří číslo n do stupně m. Stupeň může být zlomkový a negativní, což významně rozšiřuje schopnosti této funkce.

Zvolte napájení (10, 2) X1, napájení (100, 1/2) x2,

Napájení (1000, 1/3) x3, napájení (1000, -1/3) x4

Od Dual.

X1. X2. X3. X4.
100 10 10 0,1

V některých případech při volání této funkce může dojít k výjimce. Například:

Zvolte napájení (-100, 1/2) x2

Od Dual.

V tomto případě je proveden pokus o výpočet čtverečního kořene z záporného čísla, které povede k argumentu ARA-01428 "mimo chybu rozsahu".

Funkce SQRT (n)

Tato funkce vrátí druhový kořen z n čísla n. Například:

Vyberte SQRT (100) x

Od Dual.

Funkce exp (n) a ln (n)

Funkce EXP PRENDS E do stupně n a funkce LN vypočítá přirozený logaritmus z n (s n, n musí být větší než nula). Příklad:

Zvolte exp (2) x1, ln (1) x2, ln (exp (2)) x3

Investované funkce jsme se dotkli trochu dřív, nyní je považovat za trochu podrobněji. Budeme také zvážit funkci práce s hodnotou null a funkcemi, které pomáhají implementovat operaci pobočky v žádosti.

Vnořené funkce

Vnořené funkce Používám vrácenou hodnotu jedné funkce jako vstupní parametr pro jinou funkci. Funkce vždy vrací pouze jednu hodnotu. Proto můžete zvážit výsledek funkce funkce jako doslovnou hodnotu při použití jako parametr volání do jiné funkce. Funkce linky mohou být připojeny k libovolné úrovni hnízdění. Volání jedna funkce vypadá

Funkce1 (parametr1, parametr2, ...) \u003d výsledek

Výměna funkčního parametru pro volání jiné funkce může vést k vzhledu druhů

F1 (Param1.1, F2 (Param2.1, Param2,2, F3 (Param3.1)), PARAM1.3)

Zpočátku se vnořené funkce vypočítávají před jejich výsledky jako vstupní hodnoty pro další funkce. Funkce jsou vypočteny z nejhlubší úrovně vnoření vpravo dole. Předchozí výraz se provádí následovně

  1. Obrázek F3 (Param1) se vypočítá a hodnota návratu se používá jako třetí parametr pro funkci 2, zavolejte jej Param2.3
  2. Funkce F2 se pak vypočítá (Param1, Param2.2, Param2.3) a hodnota návratu se používá jako druhý parametr F1 funkce - Param1.2.
  3. Konečně se vypočítá funkce F1 (PARM1, PARM2, PARAM2, PARAM1.3) a výsledek je vrácen do programu volání.

Funkce F3 je tedy ve třetí úrovni hnízdění.

Zvažte požadavek

vyberte_day (Last_day (Sysdate) -7, 'Út') od dvojího;

  1. V tomto dotazu, tři funkce, od nižší úrovně na vrchol - Sysdate, Last_day, Next_day. Žádost se provádí následovně.
  2. Provádí se nejvíce vnořená funkce SYSDATE. Vrací aktuální systémový čas. Předpokládejme, že aktuální datum 28. října 2009
  3. Výsledkem je výsledek funkce druhé úrovně last_day. Last_date ('28 -Oxt-2009 ') vrátí poslední den října 2009, to znamená hodnotu 31. října 2009.
  4. Pak se odečítání vyskytuje z tohoto data sedmi dnů - to se ukáže 24. října.
  5. A konečně, funkce Next_day ('24 -Oxt-2009 ',' Út ') se vypočítá a žádost se vrátí posledního úterý října - to v našem příkladu 27. října 2009.

Je velmi těžké pochopit a budovat komplexní výrazy s využitím mnoha připojených výzev funkcí, ale přichází s časem a praxí. Takové výrazy můžete prolomit na část a test odděleně. Tabulka Dual je velmi užitečná pro testování Z.prosov a výsledky funkce funkce. Můžete testovat a ladit malé komponenty, které pak kombinují do jednoho velkého požadovaného výrazu.

Funkce větve

Funkce pobočky, také známé, jako by něco - jinak, se používá k určení prováděcí cesty v závislosti na všech okolnostech. Funkce větvení vrátí různé výsledky založené na žádné důsledku výpočtu stavu. Skupina takových funkcí přidělí funkce práce s hodnotou null: nvl, nvl2, nullif a koše. A také společné rysy reprezentované dekódovací funkcí a výrazovým výrazem. Funkce Decode je funkce Oracle, zatímco výraz případ je přítomen v Standardu ANSI SQL.

Funkce nvl

Funkce NVL kontroluje hodnotu sloupce nebo vyjadřuje jakýkoliv typ dat na null. Pokud null - vrátí alternativní non-null výchozí hodnotu, jinak je vrácena počáteční hodnota.

Funkce NVL má dvě požadované parametry a syntaxe NVL (Original, Ifnull), kde originál je původní hodnota pro kontrolu a výsledkem Ifnull vráceného funkcí, pokud je původní hodnota null. Typ dat ifnull a originálních parametrů musí být kompatibilní. To znamená, že buď datový typ musí být stejný nebo by měl být možnost implicitní konverze hodnot z jednoho typu do druhé. Funkce NVL vrátí hodnotu stejného typu dat jako typ dat původního parametru. Zvažte tři požadavky

Dotaz 1: Vyberte NVL (1234) z Dual;

Dotaz 2: Vyberte NVL (NULL, 1234) od dvojího;

Dotaz 3: Vyberte NVL (Substr ('ABC', 4), "neexistuje žádný podklad") od dvojího;

Vzhledem k tomu, že funkce NVL vyžadují dva parametry, dotaz 1 vrátí chybu ORA-00909: neplatný počet argumentů. Žádost 2 se vrátí 1234, protože je zkontrolována hodnota null a je null. Otázka Tři se použijí vnořené substr Funkce, která se pokusí vybrat čtvrtý znak z řetězce ve třech znakech dlouhých, vrátí hodnotu null a funkce NVL vrací řetězec "Ne Sbustring Exists".

Funkce NVL je velmi užitečná při práci s čísly. Používá se k převodu hodnot null na 0 až aritmetické operace Nully se nevrátily nad čísly

Funkce nvl2

Funkce NVL2 poskytuje funkční než NVL, ale také slouží k zpracování hodnoty null. Kontroluje hodnotu sloupce nebo výrazů libovolného typu na null. Pokud hodnota není rovna , je druhý parametr zapojen, jinak je vrácen třetí parametr, na rozdíl od funkce NVL, která v tomto případě vrátí počáteční hodnotu.

Funkce NVL2 má tři požadované parametry a syntaxe NVL2 (originál, IFNOTNULL, IFNULL), kde je originál platná hodnota, hodnota Ifnotnull je vrácena v případě originálu není null a Ifnull vrácen v případě, že originál je null. Typy dat IFNOTNULL a IFNULL parametry musí být kompatibilní a nemohou být napišeny dlouho. Datový typ vrácené funkce NVL2 se rovná typu dat parametru IFNOTNULL. Zvažte několik příkladů

Dotaz 1: Vyberte NVL2 (1234, 1, 'řetězec') od Dual;

Dotaz 2: Vyberte NVL2 (NULL, 1234, 5678) z dvojitého;

Dotaz 3: Vyberte NVL2 (Substr ('ABC', 2), 'NOT BC', 'Ne Substring') z Dual;

Parametr IFNOTNULL v dotazu 1 je číslo a parametr IFNULL je řetězec. Vzhledem k tomu, že datové typy jsou nekompatibilní, chyba "ORA-01722: Neplatné číslo" se vrátí. Queue Dva vrací iFNULL parametr, protože originál je null a výsledek bude 5678. Dotaz se třemi používají funkci Substr, která vrací "BC" a volání NVL2 (dále jen "BC", "NO BC", "NO SUBSTRING") \\ t IFNOTNULL parametr - 'ne bc'.

Funkce nullif

Funkce NULLIF kontroluje dvě hodnoty pro identitu. Pokud jsou stejné - null je vrácen, jinak se vrátí první parametr. Funkce NULLIF má dvě povinné parametry a syntaxe nullif (ifuniqual, srovnání_item). Funkce porovnává dvě parametry a pokud jsou identické - null je vrácen, jinak je to ifunequal parametr. Zvažte požadavky

Dotaz 1: Vyberte nullif (1234, 1234) z duálního;

Žádost se vrátí , protože parametry jsou identické. Řádky v dotazu 2 nejsou převedeny na datum, ale jsou porovnány jako linie. Vzhledem k tomu, že řady různých délek - vrátí parametr IFUNEQUAL 24-JUL-2009.

Obrázek 10-4, funkce NULLIF je investována do funkce NVL2. Ve funkci NULLIF, na otočení, Substr a horní funkce se používají jako součást výrazu v ifunequal parametru. Sloupec e-mailu je porovnán s tímto výrazem, který vrací první písmeno jména, United s příjmením pro zaměstnance, kteří mají jméno ve 4 znakech. Když jsou tyto hodnoty stejné, nullif vrátí , hodnota parametru ifuniqual vrátí hodnotu. Tyto hodnoty se používají jako parametr funkce NVL2. NVL2 zase vrací popis, zda se soupeřné prvky shodují nebo ne.

Obrázek 10-4 - Použití funkce NULLIF

Funkce Coalesce.

Funkce Coalesce vrátí první hodnotu, která není rovna null z seznamu parametrů. Pokud jsou všechny parametry , null je vrácen. Funkce Coalesce má dva požadované parametry a kolik volitelných parametrů a salyce Syntaxe (EXPR1, Expr2, ..., Exprn), kde výsledek je Expr1, pokud hodnota EXPR 1H NULL, jinak bude výsledek EXPR2, pokud to není null , atd. Coalesce je stejně ve významu funkcí NVL

Coalesce (expr1, expr2) \u003d nvl (expr1, expr2)

Coalesce (EXPR1, EXPR2, EXPR3) \u003d NVL (EXPR1, NVL (EXPR2, EXPR3))

Data Typ Návratová hodnota Pokud není hodnota Null null se rovná datovému typu první hodnoty null. Aby nedošlo k chybě, ORA-00932: nekonzistentní typy dat ', všechny parametry nul nulové musí být kompatibilní s prvním parametrem null null. Zvažte tři příklady

Dotaz 1: Vyberte Coalesce (NULL, NULL, NULL, 'Řetězec') od dvojího;

Dotaz 2: Vyberte Coalesce (NULL, NULL, NULL) od dvojího;

Dotaz 3: Vyberte Coalesce (Substr ('ABC', 4), "NO BC", "No Substring") od dvojího;

Žádost 1 vrátí čtvrtý parametr: řetězec, protože se jedná o první parametr null. Dotaz se vrátí , protože všechny parametry jsou nulové. Požadavek 3 Vypočítá první parametr, dostane hodnotu null a vrátí druhý parametr, protože se jedná o první parametr null.

Funkční parametry NVL2 se mohou zaměnit, pokud již nejste obeznámeni s funkcí NVL. NVL (Original, Ifnull) vrátí originál, pokud hodnota není , jinak Ifnull. NVL2 (Original, IFNOTNULL, IFNULL) Vrátí IfNot, pokud původní hodnota není rovna null jinému než Ifnull. Zmatek dochází v důsledku skutečnosti, že druhý parametr funkce NVL If, zatímco NVL2 je Ifnotnull. Takže nedopráčejte parametr ve funkci.

Dekódování funkce

Funkce dekódování implementuje logiku IF-pak. Kontrola prvních dvou parametrů na rovnost a vrácení třetí hodnoty v případě jejich rovnosti nebo jiné hodnoty v případě nerovnosti. Funkce dekódování má tři požadované parametry a syntaxe dekódování (EXPR1, COMP1, IFTRUE1 ,,). Tyto parametry se používají podle následujícího příkladu pseudo-kódu.

Pokud expr1 \u003d comp1 pak vrátit iffrue1

Jinak, pokud expr1 \u003d comp2 pak vrátit Iftrue2

Jinak, pokud exprn \u003d compn pak vrátit Iftruen

Jinak vrátit NULL | IFFALSE;

Zpočátku EXPR1 je porovnán s COMP1. Pokud se rovnou hodnotě IFTRUE1. Pokud Expr1 není roven COMP1, pak co se stane dále závisí na tom, zda jsou zadány parametry COMP2 a IFTRUE2. Pokud jsou nastaveny sady, hodnota Expr1 je porovnána s COMP2. Pokud jsou hodnoty stejné, je iFTRUE2 vrácen. Pokud ne, pokud existují dvojice parametrů COMPN, IFTRUEN porovnává Expr1 a COMPN a pokud je IFTruen v případě rovnosti vrácen. Pokud nedošlo k náhodu v žádné sadě parametrů, pak se vrátí, pokud by byl tento parametr nastaven nebo null.

Všechny parametry v dekódování mohou být výrazy. Typ vrácené hodnoty se rovná typu prvního kontrolního prvku - parametrcomp 1. expr výraz 1 implicitně převeden na datový typ parametru COMP1. Všechny ostatní dostupné možnosti comp1 ... compn. Také implicitně převedeno na typ COMP1. Decode považuje hodnotu null stejnou jinou hodnotou , tj. Pokud je expr1 null a comp3 je null a comp2 není , pak je vrácena hodnota iffrue3. Zvažte několik příkladů

Dotaz 1: Vybrat dekódování (1234, 123, '123 je zápas') od dvojího;

Dotaz 2: Vyberte dekódování (1234, 123, '123 je zápas', 'žádný zápas') od dvojího;

Dotaz 3: Vyberte dekód ('Hledat', 'COMP1', 'true1', 'comp2', 'true2', 'Hledat', 'true3', substr ('2search', 2, 6),, true4 ',' ' false ') od dvojího;

Požadavek porovnává hodnotu 1234 a 123. Vzhledem k tomu, že nejsou stejné, pak IFTRUE1 je ignorován a protože není definován, pokud je null vrácen. Dotaz je totožný s dotazem 1, výjimkou, kterou je definována hodnota IFFALSE. Vzhledem k tomu, že 1234 není rovno 123, je IFFALSE vrácena - "bez zápasu". Tři dotazy zkontroluje hodnoty parametrů na odpovídající hodnotu vyhledávání. Parametry COMP1 a COMP2 nejsou stejné jako 'Hledat' proto, výsledky IFTRUE1 a IFTRUE2 jsou přeskočeny. Shoda okolností se nachází ve třetím srovnávacím srovnání prvku COMP3 (poloha parametru 6) a hodnota IFTRUE3 (parametr 7) je vrácena, což je "true3". Vzhledem k tomu, že náhoda je nalezena více výpočtů. To znamená, že navzdory skutečnosti, že hodnota COMP4 (parametr 8) se také shoduje s EXPR1 - tento výraz se nikdy nevypočítává, protože náhoda byla nalezena v předchozímu porovnání.

Výraz

Všechny programovací jazyky třetí a čtvrté generace implementují design případu. Stejně jako funkce dekódování, výrazový výraz umožňuje implementovat logiku If-twic-else. K dispozici jsou dvě možnosti pro použití případu. Simple Case Expression Nastaví zdrojový prvek pro porovnání jednou a zobrazí všechny potřebné ověřovací podmínky. Komplexní (hledaný) případ vypočítá oba operátory pro každou podmínku.

Výraz případu má tři povinné parametry. Syntaxe exprese závisí na typu. Pro jednoduchý výraz výrazu vypadá

Case Search_Expr.

Při porovnání_expr1 pak iffrue1

}