Príkazy MySQL vtedy a potom

Mysql If Then Statements



Deklarácia „IF“ sa často používa v zachovaných programoch v MySQL, ktoré presadzujú jednoduchú podmienenú konštrukciu. Príkaz IF-THEN umožňuje vykonať sériu príkazov SQL na základe zadanej podmienky. Ako jedna z troch hodnôt poskytne hodnotu True, False alebo NULL. V celej tejto príručke pochopíme, ako spracovať časť príkazu SQL týkajúcu sa danej podmienky pomocou príkazu MySQL IF-then.

Syntax:

>>Podmienka IF POTOM vyhlásenia KONIEC IF;

V nasledujúcej syntaxi:







  • Ak si to' s klauzula kľúčového slova pre podmienku, ktorá sa má začať.
  • Podmienka : Po klauzule „IF“ je to obmedzenie, ktoré je potrebné splniť.
  • Vyhlásenia : Môže to byť akýkoľvek kód, napr. Vybrať, načítať, aktualizovať, odstrániť. Ak je podmienka vyhodnotená ako PRAVDA, vykonajú sa príkazy za doložkou „POTOM“.
  • KONIEC AK: Toto je koniec doložky „IF“. Potom sa sila presunie do ďalšej klauzuly.

Začnime porozumieť If-then spustením príkazového shellu MySQL. Zadaním hesla sme pripravení ísť.





Príklad 01: IF () funkcie MySQL:

Aby sme získali znalosti o príkaze If, ​​musíme najskôr otestovať funkciu IF (). V nižšie uvedenom príklade sme definovali funkciu IF () v dotaze SELECT a dali sme jej podmienku, aby skontrolovala, či je 2 väčšie ako 9 alebo nie. Ak je podmienka platná, vráti prvú podmienku za podmienkou; inak druhý. Pretože naša podmienka nie je platná, preto vracia hodnotu „false“.





Predpokladajme ‚poradie‘ tabuľky, ako je znázornené na priloženom obrázku.



>>VYBERTE*Z údajov.objednávka;

Pozrime sa na funkciu IF () vykonanú v tejto tabuľke. Vyberali sme tri stĺpce. Ak má stĺpec „Stav“ hodnotu „Zaplatené“, metóda IF () vráti hodnotu „Vynikajúci“, inak „Zlý“. Vrátená hodnota funkcie IF () bude uložená do novo spusteného stĺpca „Poznámky“. Teraz môžeme vidieť výstup uvedený nižšie.

Príklad 02: Vyhlásenie MySQL IF-THEN

Na príkazovom riadku MySQL sme vyskúšali funkciu IF (). Vyskúšajme nový príklad príkazu IF-Then v MySQL GUI pri použití procedúr. Otvorte MySQL Workbench 8.0 a najskôr sa pripojte k databáze.

Pracujeme na „údajoch“ databázy; potom musíte zadať príkaz „použiť údaje“, aby ste ho mohli použiť v programe Workbench. Spustite ho stlačením ikony blesku. Musíte vedieť, že príkazy If-then fungujú s postupmi ukladania, ako je uvedené nižšie. Deklarovali sme oddeľovač kľúčových slov na spustenie procedúry ukladania. Procedúra „myResult“ používa dva argumenty. Po príkaze BEGIN máme príkaz IF, ktorý kontroluje stav. Ak podmienka vyhovuje, vykoná sa príkaz „THEN“ a jeho nasledujúce vyhlásenie. Ak je podmienka nepravdivá, budú implementované vyhlásenia za „KONIEC AK“.

Pretože postup „myResult“ zahŕňa dva argumenty, musíme doň vložiť dve hodnoty.

Po odovzdaní hodnôt do úložnej procedúry musíme zavolať procedúru, aby sme videli výsledky príkazu If-then.

A výsledok je uvedený nižšie. Vypočítala sadzbu zľavy prostredníctvom príkazu If-then.

Ak chcete znova použiť rovnakú uloženú procedúru, musíte túto procedúru najskôr zrušiť pomocou nižšie uvedeného príkazu DROP a potom znova spustiť.

Príklad 03: Vyhlásenie MySQL IF-THEN-ELSE

Prejdeme na nejakú širšiu úroveň. Tentokrát sa pozrieme na príkaz IF-Then-Else pomocou uloženej procedúry v našom príklade. Pozrite sa na nižšie uvedenú tabuľku „Študent“ s niektorými poliami.

>>VYBERTE*Z údajov.študent;

Najprv musíte použiť databázu „údaje“ na použitie tabuľky „študent“ v našom obchode. Za týmto účelom zadajte do terminálu príkazového riadka MySQL nasledujúci príkaz.

>>používať údaje;

Teraz deklarujte oddeľovač a potom začnite písať procedúru ukladania. Na deklarovanie alebo vytvorenie postupu sa použije príkaz „CREATE“ ako vždy. Procedúra „detaily“ používa dva argumenty. Potom sa začne proces ukladania pomocou kľúčového slova „ZAČAŤ“. Slovo „DECLARE“ sa používa na definovanie premennej „Sub“ pre subjekty. Dotaz „SELECT“ sa použil na výber hodnôt stĺpca „Predmet“ z tabuľky „študent“ a uloženie do novo deklarovanej premennej „Sub“. Používateľom poskytnutá hodnota „S_Subject“ sa porovná so hodnotou v stĺpci „Predmet“. Vo výraze „IF“, ak sa hodnota „S_Subject“ poskytnutá používateľom zhoduje s hodnotou v stĺpci „Predmet“, vykoná sa relatívny príkaz „POTOM“ spolu s jeho príkazmi vo vnútri. Tento postup bude spracovaný od prvého vyhlásenia „IF“ do druhého, potom tretieho vyhlásenia „ELSEIF“. Ak sa posledná časť „ELSEIF“ nezhoduje s hodnotou poskytnutou používateľom, príkazu „END IF“ bude poskytnutá kontrola.

Ukončime oddeľovač príkazom nižšie.

Musíme zavolať skladovú procedúru jej vykonaním pomocou dotazu „CALL“ a zadaním argumentov v zátvorkách. Pretože sme ako hodnotu uviedli „matematiku“, vygeneruje sa nový stĺpec na výstup z príkazu „POTOM“ a „SET“.

Skontrolujeme novo vytvorený stĺpec „S_Cource“ pomocou nižšie uvedeného príkazu. Môžete vidieť, že máme relevantný výsledok podľa kurzu „Matematika“.

Zavolajte postup znova zmenou pri prvom argumente, tj. Predmete. Tentokrát sme poskytli predmet „Počítač“.

Pri výbere hodnoty stĺpca „S_Cource“ môžete vidieť, že máme hodnotu súvisiacu s predmetom „Počítač“, ktorým je „IT“.

Ešte raz sme zavolali nižšie uvedený postup úpravou prvého argumentu. Predmet „História“ sme tentoraz doručili.

Opätovným zavolaním stĺpca „S_Cource“ môžete vidieť, ako sme dosiahli výsledok „majstri v histórii“, pokiaľ ide o nedávno poskytnutý predmet, napr. História.

Záver:

Urobili sme všetky príklady požadované na spracovanie príkazov vtedy a potom, napr. Funkcia IF (), jednoduché vyhlásenie if-potom, vyhlásenie if-then-else.