Odločanje pri pisanju scenarijev je podobno odločanju v resničnem življenju. Pri skriptiranju se upravitelji baze podatkov soočajo z nekaterimi situacijami, ko želijo, da se določen del skripta izvede, ko je izpolnjen nek pogoj.
gimp odstrani vodni žig
The Izjava MySQL IF se uporablja za potrditev stanja. Stavek IF vrne stavke, če je pogoj TRUE. Z drugo besedo; stavek MySQL IF se uporablja za izvajanje množice stavkov SQL na podlagi vnaprej določenega pogoja.
Opomba: Stavek MySQL IF se razlikuje od funkcije IF().
Stavek IF ima tri načine:
- Izjava ČE-POTEM
- Izjava IF-THEN-ELSE
- Izjava IF-THEN-ELSEIF- ELSE
| Parametri | Izjava MySQL IF-THEN | Izjava MySQL IF-THEN-ELSE | Izjava MySQL IF-THEN-ELSE IF-ELSE |
|---|---|---|---|
| Opredelitev | Stavek IF-THEN se uporablja za izvajanje nabora stavkov SQL na podlagi vnaprej določenega pogoja. | Ko se preveri, ali je pogoj TRUE, se izvedeta stavka med IF-THEN in ELSE. Po drugi strani pa se izvršijo izjave (izjave else) med ELSE in END IF. | Stavek MySQL IF-THEN-ELSE IF-ELSE lahko uporabite za pogojno izvajanje stavkov na podlagi več pogojev. |
| Sintaksa | ČE pogoj POTEM izjave; KONEC ČE; | ČE pogoj POTEM izjave; DRUGEGA else-izjave; KONEC ČE; | ČE pogoj POTEM izjave; ELSEIF elseif-pogoj THEN elseif-izjave; DRUGEGA else-izjave; KONEC ČE; |
| Uporabljeni parametri | pogoj – Uporablja se za definiranje pogoja, ki bo ovrednoten. izjave – je niz stavkov SQL, ki temeljijo na vnaprej določenem pogoju. | pogoj – Uporablja se za definiranje pogoja, ki bo ovrednoten. izjave – je nabor stavkov SQL, ki se izvedejo, ko je vnaprej določen pogoj resničen. else-statements – To je niz stavkov SQL, ki se izvedejo, ko je vnaprej določen pogoj napačen. | pogoj – Uporablja se za definiranje pogoja, ki bo ovrednoten. izjave – je nabor stavkov SQL, ki se izvedejo, ko je vnaprej določen pogoj resničen. else if-pogoj – Uporablja se za definiranje pogoja, ki bo ovrednoten, ko je prvi pogoj napačen. else-statements – To je niz stavkov SQL, ki se izvedejo, ko je vnaprej določen pogoj napačen. |
Izjava MySQL IF-THEN:
Stavek IF-THEN se uporablja za izvajanje nabora stavkov SQL na podlagi vnaprej določenega pogoja.
Sintaksa:
ČE pogoj POTEM
izjave;
KONEC ČE;
Uporabljeni parametri:
- stanje – Uporablja se za definiranje stanja, ki bo ovrednoteno.
- izjave – Je niz stavkov SQL, ki temeljijo na vnaprej določenem pogoju.
primer:
DELIMITER $$ CREATE PROCEDURE Geekdemo( num1 INT) BEGIN IF num1 <5000 THEN RETURN 'Input is less than 5000.' END IF; END; $$ DELIMITER; //To check output CALL Geekdemo(); // Input- 4500>
Izhod:
Input is less than 5000.>
Izjava MySQL IF-THEN-ELSE:
Ko se preveri, ali je pogoj TRUE, se izvedeta stavka med IF-THEN in ELSE. Po drugi strani pa se izvršijo izjave (izjave else) med ELSE in END IF.
Sintaksa:
ČE pogoj POTEM
izjave;
DRUGEGA
else-izjave;
oddano v sqlKONEC ČE;
Uporabljeni parametri:
- stanje – Uporablja se za definiranje stanja, ki bo ovrednoteno.
- izjave – Je niz stavkov SQL, ki se izvedejo, ko je vnaprej določen pogoj resničen.
- else-izjave – Je niz stavkov SQL, ki se izvedejo, ko je vnaprej določen pogoj napačen.
primer:
DELIMITER $$ CREATE PROCEDURE Geekdemo( num1 INT) BEGIN IF num1 <5000 THEN RETURN 'Input is less than 5000.' ELSE RETURN 'Input is more than 5000.' END IF; END; $$ DELIMITER; // To check output CALL Geekdemo(); // Input 5500>
Izhod:
Input is more than 5000.>
Izjava MySQL IF-THEN-ELSE IF-ELSE:
Stavek MySQL IF-THEN-ELSE IF-ELSE lahko uporabite za pogojno izvajanje stavkov na podlagi več pogojev.
Sintaksa:
ČE pogoj POTEM
izjave;
ELSEIF elseif-pogoj THEN
str v intelseif-izjave;
DRUGEGA
else-izjave;
KONEC ČE;
Uporabljeni parametri:
- stanje – Uporablja se za definiranje stanja, ki bo ovrednoteno.
- izjave – Je niz stavkov SQL, ki se izvedejo, ko je vnaprej določen pogoj resničen.
- elseif-pogoj – Uporablja se za definiranje pogoja, ki bo ovrednoten, ko je prvi pogoj napačen.
- else-izjave – Je niz stavkov SQL, ki se izvedejo, ko je vnaprej določen pogoj napačen.
primer:
DELIMITER $$ CREATE PROCEDURE Geekdemo( num1 INT) BEGIN IF num1 <5000 THEN RETURN 'Input is less than 5000.' ELSEIF num1 = 5000 THEN RETURN 'Input is equal to 5000.' ELSE RETURN 'Input is more than 5000.' END IF; END; $$ DELIMITER; To check output CALL Geekdemo(); Input 5000>
Izhod:
Input is equal to 5000.>