Vyhlásenie prípadu SQL, keď je hodnota null

Vyhlasenie Pripadu Sql Ked Je Hodnota Null



Podmienené vykonávanie sa vzťahuje na schopnosť vykonať blok kódu iba vtedy, ak je splnená špecifická podmienka. Ide o rozšírenú operáciu vo vývoji. Napríklad najbežnejším spôsobom dosiahnutia podmieneného vykonania v SQL je použitie príkazu CASE.

Príkaz CASE nám umožňuje vykonávať podmienenú logiku kontrolou hodnoty jedného alebo viacerých stĺpcov v tabuľke a následným vykonaním konkrétneho bloku kódu na základe výsledku tejto kontroly.







Tento tutoriál nás naučí, ako používať príkaz CASE, ak je daná hodnota NULL.



Vyhlásenie prípadu SQL

Nasledujúci text zobrazuje syntax príkazu CASE v SQL:



výraz CASE
KEĎ hodnota_1 POTOM výsledok_1
KEĎ hodnota_2 POTOM výsledok_2
...
ELSE default_result
KONIEC


Zvážte nasledujúci príklad:





vytvoriť tabuľku študentov (
id int auto_increment nie je nulový primárny kľúč,
názov varchar ( päťdesiat ) ,
science_score int nie je null,
math_score int nie je null,
history_score int nie je null,
other int not null
) ;
VLOŽIŤ DO študentov ( meno, vedecké_skóre, matematické_skóre, historické_skóre, iné )
HODNOTY
( 'John Doe' , 80 , 70 , 90 , 85 ) ,
( 'Jane Smith' , 95 , 85 , 80 , 92 ) ,
( 'Tom Wilson' , 70 , 75 , 85 , 80 ) ,
( 'Sara Lee' , 88 , 92 , 90 , 85 ) ,
( 'Mike Johnson' , 75 , 80 , 72 , 68 ) ,
( 'Emily Chen' , 92 , 88 , 90 , 95 ) ,
( 'Chris Brown' , 85 , 80 , 90 , 88 ) ,
( 'Lisa Kim' , 90 , 85 , 87 , 92 ) ,
( 'Mark Davis' , 72 , 68 , 75 , 80 ) ,
( 'Ava Lee' , 90 , 95 , 92 , 88 ) ;


Napríklad môžeme použiť príkaz CASE na vyhodnotenie rôznych možností a vrátenie konkrétnej akcie, ako je to znázornené v nasledujúcom príklade:

VYBRAŤ
názov,
vedecké_skóre,
matematické_skóre,
history_score,
iné,
CASE
KEDY ( science_score + math_score + history_score + ďalšie ) / 4 > = 90 POTOM 'A'
KEDY ( science_score + math_score + history_score + ďalšie ) / 4 > = 80 POTOM 'B'
KEDY ( science_score + math_score + history_score + ďalšie ) / 4 > = 70 POTOM 'C'
KEDY ( science_score + math_score + history_score + ďalšie ) / 4 > = 60 POTOM 'D'
ELSE 'F'
KONIEC AKO 'známka'
OD študentov;


Výsledný výstup:



Vyhlásenie prípadu SQL, keď je hodnota null

Pri práci s hodnotami null môžeme použiť príkaz CASE na vykonanie bloku kódu. Okrem toho môžeme použiť operátory IS NULL a IS NOT Null na vyhodnotenie hodnôt NULL a vykonanie konkrétnej akcie na základe vrátenej hodnoty.

Zvážte nasledujúci príklad syntaxe:

VYBRAŤ
CASE
KEĎ je názov stĺpca NULL THEN „Hodnota je nulová“
ELSE „Hodnota nie je nulová“
KONIEC AKO výsledok
FROM názov_tabuľky;


V tomto prípade skontrolujeme, či je hodnota zadaného názvu stĺpca nulová. Ak je pravda, vrátime hodnotu „Hodnota je nulová“. reťazec. V opačnom prípade, ak hodnota nie je nulová, vrátime hodnotu „Hodnota nie je nulová“. reťazec.

Kľúčové slovo AS používame aj ako alias pre výsledný reťazec.

Zvážte nasledujúcu príklad tabuľky:

VLOŽIŤ DO študentov ( meno, vedecké_skóre, matematické_skóre, historické_skóre, iné, temp )
HODNOTY
( 'John Doe' , 80 , 70 , 90 , 85 , nulový ) ,
( 'Jane Smith' , 95 , 85 , 80 , 92 , nulový ) ,
( 'Tom Wilson' , 70 , 75 , 85 , 80 , 't' ) ,
( 'Sara Lee' , 88 , 92 , 90 , 85 , 's' ) ,
( 'Mike Johnson' , 75 , 80 , 72 , 68 , nulový ) ,
( 'Emily Chen' , 92 , 88 , 90 , 95 , nulový ) ,
( 'Chris Brown' , 85 , 80 , 90 , 88 , 'nulový' ) ,
( 'Lisa Kim' , 90 , 85 , 87 , 92 , '' ) ,
( 'Mark Davis' , 72 , 68 , 75 , 80 , nulový ) ,
( 'Ava Lee' , 90 , 95 , 92 , 88 , 'a' ) ;


Potom môžeme vytlačiť konkrétnu správu pre nulové hodnoty pomocou príkazu CASE.

vyberte meno, brigáda,
CASE
KEĎ JE TEMP NULL „Hodnota je nulová“
ELSE „Hodnota nie je nulová“
KONIEC AKO výsledok
OD študentov s ;


Výkon:

Záver

Naučili sme sa pracovať s príkazom SQL CASE na vyhodnotenie konkrétnej podmienky a vykonanie požadovanej úlohy na základe výslednej hodnoty.