Tipos de condicionales en SQL

| Última modificación: 6 de mayo de 2024 | Tiempo de Lectura: 4 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Si estás incursionando en el mundo de las bases de datos y el lenguaje SQL, es crucial entender qué son y cómo funcionan los condicionales en SQL. Los condicionales son una parte esencial de las consultas SQL, ya que permiten filtrar y manipular datos de acuerdo con ciertas condiciones especificadas. En este artículo, exploraremos qué son los condicionales en SQL, para qué sirven, y cómo se utilizan en consultas SQL.

¿Cómo funcionan los condicionales en SQL?

¿Qué son los condicionales en SQL?

Los condicionales en SQL son expresiones que permiten aplicar lógica condicional a las consultas de bases de datos. Estas expresiones permiten tomar decisiones basadas en condiciones específicas y ejecutar diferentes acciones según el resultado de esas condiciones. Algunos ejemplos comunes de condicionales en SQL incluyen la sentencia CASE, las funciones en SQL COALESCE e IFF, y los operadores IS NULL e IS NOT NULL.

Sentencia CASE de SQL

La sentencia CASE de SQL es similar a una declaración if-then-else en otros lenguajes de programación. Permite evaluar condiciones y devolver un valor según el resultado de esas condiciones. La sintaxis básica de la sentencia CASE es la siguiente:

//condicionales en SQL
CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ...
    ELSE default_result
END;
CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ...
    ELSE default_result
END;

Supongamos que queremos clasificar los productos en función de su precio en tres categorías: “Alto”, “Medio” y “Bajo”. Podemos usar la sentencia CASE para lograr esto. Aquí está el ejemplo:

//condicionales en SQL
SELECT ProductName, 
       UnitPrice,
       CASE
           WHEN UnitPrice > 50 THEN 'Alto'
           WHEN UnitPrice > 20 THEN 'Medio'
           ELSE 'Bajo'
       END AS PriceCategory
FROM Products;

Esta consulta clasificará los productos en función de su precio, asignándolos a una de las categorías: “Alto”, “Medio” o “Bajo”.

COALESCE

La función COALESCE() en SQL se utiliza para devolver el primer valor no nulo en una lista de valores. Esto es útil cuando se desea seleccionar un valor alternativo si el primero es nulo. La sintaxis de la función COALESCE() es la siguiente:

//condicionales en SQL
COALESCE(val1, val2, ..., val_n)

🔴 ¿Quieres Aprender a Programar con Python? 🔴

Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semana

Supongamos que queremos seleccionar un valor alternativo si el precio de un producto es nulo. Podemos usar la función COALESCE() para lograr esto. Aquí está el ejemplo:

//condicionales en SQL
SELECT ProductName, 
       COALESCE(UnitPrice, 0) AS Price
FROM Products;

Esta consulta seleccionará el precio del producto, pero si el precio es nulo, devolverá 0 en su lugar.

IFF

La función IFF() en SQL devuelve un valor si una condición es verdadera, y otro valor si la condición es falsa. Es similar a la función IF en otros lenguajes de programación. La sintaxis de la función IFF() es la siguiente:

//condicionales en SQL
IFF(condition, value_if_true, value_if_false)

Supongamos que queremos clasificar los clientes en función del monto total de sus pedidos. Podemos usar la función IFF() para asignar una etiqueta de “VIP” a los clientes cuyo monto total de pedidos sea superior a cierto umbral. Aquí está el ejemplo:

SELECT CustomerName, 
       SUM(OrderAmount) AS TotalOrderAmount,
       IFF(SUM(OrderAmount) > 1000, 'VIP', 'Regular') AS CustomerType
FROM Orders
GROUP BY CustomerName;

Esta consulta calculará el monto total de los pedidos para cada cliente y los clasificará como “VIP” si superan los 1000, de lo contrario, serán clasificados como “Regular”.

Funciones SQL Null

En SQL, los valores nulos representan la ausencia de un valor en un campo de la base de datos. Es importante comprender cómo manejar y trabajar con valores nulos en consultas SQL.

Un valor nulo en SQL representa la falta de un valor en un campo de la base de datos. A diferencia de un valor cero o un campo vacío, un valor nulo indica que no se ha proporcionado ningún dato para ese campo.

Operadores IS NULL e IS NOT NULL

Los operadores IS NULL e IS NOT NULL se utilizan para probar si un valor en una columna es nulo o no nulo, respectivamente. Estos operadores son útiles para filtrar registros basados en la presencia o ausencia de valores en campos específicos.

Para probar si un valor es nulo, se utiliza la siguiente sintaxis:

column_name IS NULL

Cuando se ejecuta esta sentencia, devuelve verdadero si el valor de la columna especificada es nulo y falso si no lo es.

Y para probar si un valor no es nulo, se utiliza la siguiente sintaxis:

column_name IS NOT NULL

Cuando se ejecuta esta sentencia, devuelve verdadero si el valor de la columna especificada no es nulo y falso si es nulo.

Los condicionales en SQL son herramientas poderosas que permiten filtrar, manipular y transformar datos en consultas de bases de datos. Al comprender cómo funcionan los condicionales y cómo aplicarlos en tus consultas SQL, podrás realizar operaciones más complejas y obtener los resultados deseados de manera eficiente.

¡Atrévete a dominar los condicionales en SQL y lleva tus habilidades de bases de datos al siguiente nivel! Aprende sobre el comando update en SQL y sobre el comando delete en SQL.

¿Quieres aprender más sobre SQL y otros aspectos fundamentales de la programación? ¡Únete al Bootcamp en programación inicial de KeepCoding y transforma tu carrera en tecnología! Descubre cómo puedes convertirte en un profesional de IT en poco tiempo y abrirte paso en una industria llena de oportunidades y crecimiento.

Ramón Maldonado

Full Stack Developer y Responsable de Formación base en KeepCoding.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Aprende a Programar desde Cero

Full Stack Jr. Bootcamp

Apúntate y consigue uno de los perfiles más demandados con Python en solo 4 meses.