IF() en MySQL

En esta lección aprenderás a usar IF en MySQL. Condicional IF en SQL.

Las funciones de lógica, tipos y utilidades te permiten manejar valores nulos, convertir tipos o tomar decisiones condicionales en SQL sin cambiar los datos almacenados en la tabla. El resultado se calcula en el momento de ejecutar la consulta.

En el editor SQL de The Data Schools practicamos con SQLite y compatibilidad T-SQL. La sintaxis de muchas funciones MySQL coincide o tiene un equivalente cercano que puedes probar al instante.


¿Qué hace IF?

Condicional IF en SQL. En consultas reales suele aplicarse sobre la columna <code class="code-command">Nombre_Cliente</code> de la tabla <code class="code-command">Clientes</code>, aunque también admite literales y expresiones.

Piensa en IF() como una herramienta de transformación: lees un valor, aplicas la función y obtienes un nuevo valor listo para mostrar, filtrar o agrupar.


Sintaxis

La forma general en MySQL es:

IF()

Sustituye los argumentos por columnas, números o cadenas entre comillas simples. Usa un alias con <code class="code-command">AS</code> para que el encabezado del resultado sea legible.


Ejemplo básico

Empieza con un caso sencillo para ver qué devuelve la función. Ejecuta la consulta en el editor y observa el nombre de la columna resultante.

Probar IF

    SELECT IF(N_Ventas > 50, 'Alto', 'Bajo') AS Categoria FROM Clientes LIMIT 3;

  
Pruébalo tú mismo

Ejemplo con Clientes

Ahora aplicamos IF() sobre datos de la tabla de demostración. Este patrón es el que usarás en proyectos reales: seleccionar columnas originales, añadir una columna calculada y opcionalmente filtrar con <code class="code-command">WHERE</code>.

IF en contexto

    SELECT Nombre_Cliente, IF(N_Ventas >= 100, 'VIP', 'Estándar') AS Segmento FROM Clientes ORDER BY N_Ventas DESC LIMIT 6;

  
Pruébalo tú mismo

Cuándo usarla

Cuando necesites manejar valores nulos, convertir tipos o tomar decisiones condicionales en SQL.

En un <code class="code-command">SELECT</code> para crear una columna calculada con alias (<code class="code-command">AS</code>).

Junto con <code class="code-command">WHERE</code> o <code class="code-command">ORDER BY</code> si el resultado de IF ayuda a filtrar u ordenar.


Resumen

  • IF() trabaja con lógica, tipos y utilidades.
  • Devuelve un valor calculado; no altera la tabla original.
  • En MySQL, combínala con columnas reales como Nombre_Cliente.
  • Combina estas funciones con WHERE y CASE para consultas más expresivas.