Prohlášení MySQL If-Then

Mysql If Then Statements



Deklarace „IF“ se často používá v zachovaných programech v MySQL, které prosazují jednoduchou podmíněnou konstrukci. Příkaz IF-THEN umožňuje provedení řady příkazů SQL na základě zadané podmínky. Výsledkem je True, False nebo NULL jako jedna ze tří hodnot. V této příručce pochopíme, jak zpracovat část příkazu SQL týkající se dané podmínky pomocí příkazu MySQL IF-then.

Syntax:

>>IF podmínka POTOM prohlášení KONEC IF;

V následující syntaxi:







  • Pokud si to' s klauzule klíčového slova pro podmínku, která má být spuštěna.
  • Stav : Po klauzuli „IF“ je to omezení, které je třeba splnit.
  • Prohlášení : Může to být jakýkoli kus kódu, např. Vybrat, načíst, aktualizovat, odstranit. Pokud je podmínka vyhodnocena jako PRAVDA, budou provedeny příkazy za klauzulí „THEN“.
  • ENDIF: Je to konec klauzule „IF“. Poté se síla přesune na další klauzuli.

Začněme chápat If-then spuštěním příkazového shellu MySQL. Zadáním hesla jsme připraveni jít.





Příklad 01: Funkce MySQL IF ():

Abychom získali znalosti o příkazu If, musíme nejprve otestovat funkci IF (). V níže uvedeném příkladu jsme definovali funkci IF () v dotazu SELECT a dali jí podmínku pro kontrolu, zda 2 je větší než 9 nebo ne. Pokud je podmínka platná, vrátí první podmínku za podmínkou; jinak druhý. Protože naše podmínka není platná, proto vrací „false“.





Předpokládejme „pořadí“ tabulky, jak je znázorněno na přiloženém obrázku.



>>VYBRAT*FROM data.order;

Podívejme se na funkci IF () provedenou v této tabulce. Vybírali jsme tři sloupce. Pokud má sloupec „Stav“ hodnotu „Zaplaceno“, pak metoda IF () vrátí „Vynikající“, jinak „Špatné“. Vrácená hodnota funkce IF () bude uložena do nově vytvořeného run-time sloupce ‘Poznámky’. Nyní můžeme vidět výstup tak, jak je připojen níže.

Příklad 02: Prohlášení MySQL IF-THEN

Vyzkoušeli jsme funkci IF () na příkazovém řádku MySQL. Vyzkoušejte nový příklad příkazu IF-Then v grafickém uživatelském rozhraní MySQL při použití postupů. Otevřete MySQL Workbench 8.0 a nejprve se připojte k databázi.

Pracovali jsme na „datech“ databáze; pak musíte zadat příkaz „použít data“, abyste jej mohli použít v Workbench. Stisknutím ikony blesku ji spustíte. Musíte vědět, že příkazy If-then fungují s postupy ukládání, jak je uvedeno níže. Pro spuštění procedury ukládání jsme deklarovali oddělovač klíčových slov. Procedura „myResult“ má dva argumenty. Po příkazu BEGIN máme příkaz IF, který kontroluje podmínku. Pokud podmínka splňuje, bude proveden příkaz „THEN“ a jeho následující příkaz. Pokud je podmínka nepravdivá, budou implementovány příkazy za „KONEC IF“.

Protože procedura „myResult“ využívá dva argumenty, musíme do ní předat dvě hodnoty.

Po předání hodnot do procedury úložiště musíme zavolat proceduru, abychom viděli výsledky příkazu If-then.

A výsledek je uveden níže. Vypočítala slevovou sazbu prostřednictvím příkazu If-then.

Pokud chcete stejnou uloženou proceduru použít znovu, musíte tuto proceduru nejprve zrušit pomocí níže uvedeného příkazu DROP a poté ji znovu spustit.

Příklad 03: Prohlášení MySQL IF-THEN-ELSE

Pojďme na nějakou širší úroveň. Tentokrát se podíváme na příkaz IF-Then-Else pomocí uložené procedury v našem příkladu. Podívejte se na níže uvedenou tabulku „student“ s některými poli.

>>VYBRAT*Z dat.student;

Nejprve musíte použít databázi „data“ k použití tabulky „student“ v našem obchodním postupu. Za tímto účelem zadejte do terminálu příkazového řádku MySQL následující příkaz.

>>používat data;

Nyní deklarujte oddělovač a poté začněte psát proceduru úložiště. K deklaraci nebo vytvoření procedury bude jako vždy použit příkaz „CREATE“. Procedura „detaily“ vyžaduje dva argumenty. Poté začne procedura ukládání klíčovým slovem „ZAČÍT“. Slovo „DECLARE“ bylo použito k definování proměnné „Sub“ pro subjekty. Pomocí dotazu „VYBRAT“ byl vybrán hodnoty sloupce „Předmět“ z tabulky „student“ a uložen do nově deklarované proměnné „Sub“. Uživatelem zadaná hodnota „S_Subject“ bude porovnána s hodnotou ve sloupci „Subject“. V příkazu „IF“, pokud se uživatelem zadaná hodnota „S_Subject“ shoduje s hodnotou ve sloupci „Subject“, bude proveden relativní příkaz „THEN“ spolu s jeho příkazy uvnitř. Tento postup bude zpracován od prvního prohlášení „IF“ do druhého, poté třetího příkazu „ELSEIF“. Pokud se poslední část „ELSEIF“ neshoduje s hodnotou poskytnutou uživatelem, bude ovládání poskytnuto příkazu „END IF“.

Ukončíme oddělovač příkazem níže.

Proceduru úložiště musíme zavolat spuštěním dotazu „CALL“ a zadáním argumentů v závorkách. Jak jsme uvedli hodnotu „Matematika“, bude vygenerován nový sloupec pro výstup příkazů „THEN“ a „SET“.

Zkontrolujme nově vytvořený sloupec „S_Cource“ pomocí níže uvedeného příkazu. Můžete vidět, že máme relevantní výsledek podle kurzu „Matematika“.

Zavolejte proceduru znovu změnou u prvního argumentu, tj. Předmět. Tentokrát jsme poskytli předmět „Počítač“.

Při výběru hodnoty sloupce „S_Cource“ můžete vidět, že máme hodnotu související s předmětem „Počítač“, což je „IT“.

Ještě jednou jsme volali proceduru jako níže úpravou prvního argumentu. Tentokrát jsme dodali téma „Historie“.

Opětovným zavoláním sloupce „S_Cource“ můžete vidět, jaký máme výsledek „Mistři v historii“ týkající se nedávno zadaného předmětu, např. Historie.

Závěr:

Udělali jsme všechny příklady požadované pro zpracování příkazů If-then, např. Funkce IF (), jednoduché prohlášení If-then, prohlášení If-then-else.