MySQL: Declaració IF, IF-THEN, IF-THEN-ELSE i IF-THEN-ELSEIF-ELSE
La presa de decisions en guió és similar a la presa de decisions a la vida real. En els scripts, els DBA s'enfronten a algunes situacions en què volen que s'executi una part determinada de l'script quan es compleix alguna condició.
El Declaració IF de MySQL s'utilitza per validar una condició. La instrucció IF retorna les declaracions si la condició és TRUE. En una altra paraula; la instrucció MySQL IF s'utilitza per executar un munt d'instruccions SQL basades en una condició predefinida.
Nota: La instrucció IF de MySQL és diferent de la funció IF().
La declaració IF té tres maneres:
- Declaració IF-THEN
- Declaració IF-THEN-ELSE
- Sentència IF-THEN-ELSEIF-ELSE
| Paràmetres | Declaració MySQL IF-THEN | Declaració MySQL IF-THEN-ELSE | Declaració MySQL IF-THEN-ELSE IF-ELSE |
|---|---|---|---|
| Definició | La sentència IF-THEN s'utilitza per executar un conjunt de sentències SQL basades en una condició predefinida. | Quan la condició comprova que és TRUE, s'executen les declaracions entre IF-THEN i ELSE. D'altra banda, les sentències (else-statements) entre ELSE i END IF s'executen. | La instrucció MySQL IF-THEN-ELSE IF-ELSE es podria utilitzar per executar declaracions condicionalment basades en múltiples condicions. |
| Sintaxi | SI condició LLAVORS declaracions; FI SI; | SI condició LLAVORS declaracions; ALTRES else-declaracions; FI SI; | SI condició LLAVORS declaracions; ELSEIF elseif-condició LLAVORS declaracions elseif; ALTRES else-declaracions; FI SI; |
| Paràmetres utilitzats | condició – S'utilitza per definir la condició que s'avaluarà. declaracions: és un conjunt de sentències SQL basades en una condició predefinida. | condició – S'utilitza per definir la condició que s'avaluarà. sentències: és un conjunt d'instruccions SQL executades quan una condició predefinida és certa. else-statements: és un conjunt de sentències SQL executades quan una condició predefinida és falsa. | condició – S'utilitza per definir la condició que s'avaluarà. declaracions: és un conjunt de sentències SQL executades quan una condició predefinida és certa. else if-condition: s'utilitza per definir la condició que s'avaluarà quan la primera condició sigui falsa. else-statements: és un conjunt de sentències SQL executades quan la condició predefinida és falsa. |
Declaració IF-THEN de MySQL:
La sentència IF-THEN s'utilitza per executar un conjunt de sentències SQL basades en una condició predefinida.
Sintaxi:
SI condició LLAVORS
declaracions;
FI SI;
Paràmetres utilitzats:
- condició – S'utilitza per definir la condició que s'avaluarà.
- declaracions – És un conjunt de sentències SQL basades en una condició predefinida.
Exemple:
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
Sortida:
Input is less than 5000.
Declaració MySQL IF-THEN-ELSE:
Quan la condició comprova que és TRUE, s'executen les declaracions entre IF-THEN i ELSE. D'altra banda, les sentències (else-statements) entre ELSE i END IF s'executen.
Sintaxi:
SI condició LLAVORS
declaracions;
ALTRES
else-declaracions;
FI SI;
Paràmetres utilitzats:
- condició – S'utilitza per definir la condició que s'avaluarà.
- declaracions – És un conjunt de sentències SQL executades quan una condició predefinida és certa.
- else-declaracions – És un conjunt de sentències SQL executades quan la condició predefinida és falsa.
Exemple:
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
Sortida:
Input is more than 5000.
MySQL IF-THEN-ELSE IF-ELSE Declaració:
La instrucció MySQL IF-THEN-ELSE IF-ELSE es podria utilitzar per executar declaracions condicionalment basades en múltiples condicions.
Sintaxi:
SI condició LLAVORS
declaracions;
ELSEIF elseif-condició LLAVORS
declaracions elseif;
ALTRES
else-declaracions;
FI SI;
Paràmetres utilitzats:
- condició – S'utilitza per definir la condició que s'avaluarà.
- declaracions – És un conjunt de sentències SQL executades quan una condició predefinida és certa.
- condició elseif – S'utilitza per definir la condició que s'avaluarà quan la primera condició sigui falsa.
- else-declaracions – És un conjunt de sentències SQL executades quan la condició predefinida és falsa.
Exemple:
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
Sortida:
Input is equal to 5000.