La declaración IF en MySQL
En este tutorial, nuestro objetivo es aprender a usar la instrucción IF
en MySQL.
La sintaxis de la declaración IF
en MySQL se puede dar como SELECT IF(condition, result_when_true, result_when_false) AS [col_name]
.
En particular, la declaración IF
, la condición es el criterio definido por el programador que necesita ser evaluado.
Puede tener una o más columnas involucradas para su consideración. Por ejemplo, para verificar si un valor particular en una columna es mayor que 200 o no, podemos escribir una condición si name_of_column
> 100.
El valor result_when_true
representa el valor de salida que nos gustaría que se mostrara contra la condición si se evalúa como verdadera. Por otro lado, el valor result_when_false
representa el valor de salida que se muestra cuando se calcula que la condición es falsa.
Intentemos aprender más sobre esta declaración con un ejemplo.
Sin embargo, antes de comenzar, creamos un conjunto de datos ficticio para trabajar. Aquí creamos una tabla, student_details
, junto con algunas filas en ella.
-- create the table student_details
CREATE TABLE student_details(
stu_id int,
stu_firstName varchar(255) DEFAULT NULL,
stu_lastName varchar(255) DEFAULT NULL,
primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName)
VALUES(1,"Preet","Sanghavi"),
(2,"Rich","John"),
(3,"Veron","Brow"),
(4,"Geo","Jos"),
(5,"Hash","Shah"),
(6,"Sachin","Parker"),
(7,"David","Miller");
La consulta anterior crea una tabla con filas con los nombres y apellidos de los estudiantes. Para ver las entradas en los datos, usamos el siguiente código:
SELECT * FROM student_details;
El código mencionado anteriormente daría el siguiente resultado:
stu_id stu_firstName stu_lastName
1 Preet Sanghavi
2 Rich John
3 Veron Brow
4 Geo Jos
5 Hash Shah
6 Sachin Parker
7 David Miller
Ahora, apuntemos a imprimir Yes
junto con los nombres de los estudiantes si el stu_id
es mayor que 3. De lo contrario, imprimimos No
en una columna separada llamada high_stu_id
.
La declaración IF
en MySQL
Como se ve en la sintaxis anterior, la declaración IF
en MySQL requiere una condición. Esto funciona de manera similar a la declaración CASE
.
Podemos utilizar el siguiente programa para obtener el resultado deseado en MySQL.
SELECT stu_firstName, IF(stu_id>3,"yes","no") AS high_stu_id
FROM student_details;
El código antes mencionado obtiene el nombre de cada estudiante y una nueva columna llamada high_stu_id
.
Esta columna de resultado tiene el valor Yes
si el stu_id
del alumno es mayor que 3. En caso contrario, se imprime el valor No
si el stu_id
es menor que 3.
La salida del código anterior se puede visualizar de la siguiente manera:
stu_firstName high_stu_id
Preet no
Rich no
Veron no
Geo yes
Hash yes
Sachin yes
David yes
Del mismo modo, podemos utilizar la declaración IF
para aprovechar los datos y cumplir con nuestros requisitos. Una alternativa a la declaración IF
es la declaración CASE
en MySQL.
Por lo tanto, con la ayuda de este tutorial, ahora podemos implementar con éxito la declaración IF
en MySQL.