Declaración CASE de SQL es una expresión condicional que permite a los usuarios ejecutar diferentes acciones en función de diferentes condiciones. Es similar a la lógica if-else en otros lenguajes de programación.
Declaración CASE en SQL
La expresión CASE en SQL pasa por todas las condiciones y se detiene cuando se cumple alguna de ellas. No comprueba otras condiciones después de que una condición ha resultado verdadera y devuelve resultados basados en esa condición.
Si ninguna condición es verdadera, se ejecutará la parte ELSE. Si no hay ninguna parte ELSE, entonces regresa NULO.
Sintaxis
Para utilizar la declaración CASE en SQL, utilice la siguiente sintaxis:
CASO valor_caso
CUANDO condición ENTONCES resultado1
CUANDO condición ENTONCES resultado2
…
Demás resultado
FIN CASO;
Ejemplo de CASO SQL
Veamos algunos ejemplos de la declaración CASE en SQL para entenderla mejor.
Creemos una tabla SQL de demostración, que se usará en los ejemplos.
Base de datos SQL de demostración
Usaremos esta tabla SQL de muestra para nuestros ejemplos de declaración SQL CASE:
| Identificación del cliente | Nombre del cliente | Apellido | País | Edad | Teléfono |
|---|---|---|---|---|---|
| 1 | Duda | Thakur | India | 23 | xxxxxxxxxx |
| 2 | Seguro | chopra | Australia | 21 | xxxxxxxxxx |
| 3 | naveen | Tulasi | Sri Lanka | 24 | xxxxxxxxxx |
| 4 | Aditya | Arpan | Austria | 21 | xxxxxxxxxx |
| 5 | Nishant. Salchichas S.A. | jainista | España | 22 | xxxxxxxxxx |
Puede crear la misma base de datos en su sistema, escribiendo la siguiente consulta MySQL:
menú de configuración del teléfono Androidmysql
CREATE TABLE Customer( CustomerID INT PRIMARY KEY, CustomerName VARCHAR(50), LastName VARCHAR(50), Country VARCHAR(50), Age int(2), Phone int(10) ); -- Insert some sample data into the Customers table INSERT INTO Customer (CustomerID, CustomerName, LastName, Country, Age, Phone) VALUES (1, 'Shubham', 'Thakur', 'India','23','xxxxxxxxxx'), (2, 'Aman ', 'Chopra', 'Australia','21','xxxxxxxxxx'), (3, 'Naveen', 'Tulasi', 'Sri lanka','24','xxxxxxxxxx'), (4, 'Aditya', 'Arpan', 'Austria','21','xxxxxxxxxx'), (5, 'Nishant. Salchichas S.A.', 'Jain', 'Spain','22','xxxxxxxxxx');>
Ejemplo de expresión CASE
En este ejemplo, usamos la declaración CASE
Consulta:
SELECT CustomerName, Age , CASE WHEN Country = 'India' THEN 'Indian' ELSE 'Foreign' END AS Nationality FROM Customer;>
CASO SQL cuando ejemplo de múltiples condiciones
Podemos agregar múltiples condiciones en la declaración CASE usando múltiples CUANDO cláusulas.
Consulta:
SELECT CustomerName, Age, CASE WHEN Age>22 ENTONCES 'La edad es mayor que 22' CUANDO Edad = 21 ENTONCES 'La edad es 21' ELSE 'La edad es mayor a 30' END AS CantidadTextO DEL Cliente;>
Producción:

Producción
Declaración CASE con ejemplo de cláusula ORDER BY
Tomemos la tabla de clientes que contiene ID de cliente, nombre de cliente, apellido, país, edad y teléfono. Podemos verificar los datos de la tabla Cliente usando el ORDENAR POR cláusula con la declaración CASE.
fecha javascript
Consulta:
SELECT CustomerName, Country FROM Customer ORDER BY ( CASE WHEN Country IS 'India' THEN Country ELSE Age END );>
Producción:

Declaración CASE con salida de ejemplo de cláusula ORDER BY
Puntos importantes sobre la declaración CASE
- La declaración SQL CASE es una expresión condicional que permite la ejecución de diferentes consultas según condiciones específicas.
- Siempre debe haber un SELECCIONAR en la declaración CASE.
- FINAL OTRO es un componente opcional pero CUANDO ENTONCES estos casos deben incluirse en la declaración CASE.
- Podemos hacer cualquier declaración condicional usando cualquier operador condicional (como DÓNDE ) entre CUANDO y ENTONCES. Esto incluye encadenar múltiples declaraciones condicionales usando AND y OR.
- Podemos incluir múltiples declaraciones WHEN y una declaración ELSE para contrarrestar condiciones no abordadas.