Intermedio
15 min de lecturaCASE
Expresiones condicionales en SQL
CASE es la expresión condicional de SQL, similar a if-else en programación.
Sintaxis
sql
1SELECT 2 CASE 3 WHEN condición1 THEN resultado14 WHEN condición2 THEN resultado25 ELSE resultado_default6 END as nombre_columna7FROM tabla;Ejemplos
sql
1-- Clasificar precios2SELECT 3 nombre,4 precio,5 CASE 6 WHEN precio < 20 THEN 'Económico'7 WHEN precio BETWEEN 20 AND 100 THEN 'Medio'8 WHEN precio > 100 THEN 'Premium'9 END as categoria_precio10FROM productos;11 12-- CASE simple13SELECT 14 nombre,15 CASE estado16 WHEN 'activo' THEN 'Usuario activo'17 WHEN 'inactivo' THEN 'Usuario inactivo'18 WHEN 'bloqueado' THEN 'Usuario bloqueado'19 END as estado_descripcion20FROM usuarios;Sintaxis
Sintaxis
sql
1CASE 2 WHEN condición THEN resultado3 [WHEN ... THEN ...]4 [ELSE resultado]5ENDEjemplos
Clasificar productos
Categorizar productos por precio
Ejemplo
sql
1SELECT nombre, precio,2 CASE 3 WHEN precio < 50 THEN 'Barato'4 WHEN precio BETWEEN 50 AND 200 THEN 'Normal'5 ELSE 'Caro'6 END as rango7FROM productos8ORDER BY precio;Resultado:
| nombre | precio | rango | |------------|--------|-------| | USB Cable | 19 | Barato| | Teclado | 149 | Normal| | Laptop | 2999 | Caro |