Cómo usar una declaración de caso con múltiples condiciones

Cómo usar una declaración de caso con múltiples condiciones
Mientras trabaja con grandes volúmenes de datos, el usuario desea realizar acciones basadas en múltiples condiciones. En mysql, el "CASO”La declaración proporciona una forma efectiva de manejar tales situaciones. El "CASO"La declaración se utiliza para definir múltiples condiciones y sus acciones correspondientes que se ejecutarán cuando se cumplan estas condiciones. Esta publicación discutirá cómo usar el "CASO"Declaración en MySQL con múltiples condiciones utilizando operadores lógicos"Y" y "O".

Prerrequisito: inicie sesión en el servidor MySQL local

Antes de comenzar esta publicación, asegúrese de iniciar sesión en su servidor MySQL local usando esta sintaxis:

mysql -u -p

Proporcione el nombre de su servidor MySQL y el nombre de usuario para esta publicación es "Maryland"Entonces el comando se convertiría:

mysql -u md -p

Después del inicio de sesión exitoso, cambie la base de datos en la que desea trabajar usando la sintaxis:

usar ;

El nombre de la base de datos, para esta publicación es "Linuxhint"Entonces el comando será:

usa Linuxhint;

La salida mostrará el mensaje "Base de datos cambiada":

Ha cambiado con éxito a su base de datos deseada.

¿Cuál es la declaración de "caso" en mysql??

El "CASO"La declaración es una expresión condicional en MySQL para definir las condiciones y las acciones correspondientes que se ejecutarán en función de esas condiciones. Puede definir condiciones para ejecutar sus acciones correspondientes si la condición es verdadera; De lo contrario, ejecute el "DEMÁS" acción. Se pueden definir múltiples condiciones en una "CUANDO"Cláusula utilizando los operadores lógicos entre ellos.

Sintaxis de la declaración de "caso"

La sintaxis del "CASO"La declaración es:

SELECCIONAR *,
CASO
Cuando [condición_1] entonces [salida1]
Cuando [condición_2] entonces [salida2]
Más [salida3]
FIN AS [Nombre de columna]
De [Nombre de tabla];

Vamos a desglosar esta sintaxis, aquí:

  • El "SELECCIONAR *"Se usa para seleccionar todas las columnas de la tabla especificada
  • El "CASO"La declaración comienza con el"CASO"Palabra clave seguida de dos o más"CUANDO"Cláusulas para definir múltiples condiciones.
  • Cada "CUANDO"La cláusula define una condición, si la condición es verdadera, entonces se devuelve la salida correspondiente que se indica después del"ENTONCES"Cláusula
  • Si no hay condición verdadera, se devuelve la salida que se indica en el "DEMÁS"Cláusula
  • El "FIN"Se utiliza la palabra clave para marcar el final del"CASO" declaración
  • El "Como [Nombre de la columna]"Se usa para definir un nombre para la columna que mostrará el resultado del"CASO" declaración

Ejemplo de declaración de caso para la agrupación basada en rango
Para definir la salida para la agrupación en función de una condición si el "Identificación" de la mesa "empleado"Viene en el rango definido en el"CUANDO"Cláusula y muestra su salida en la columna llamada"Identificación". Ejecute el comando que se da a continuación:

SELECCIONAR *,
CASO
Cuando ID entre 1 y 5 entonces '1-5'
Cuando ID entre 6 y 10, entonces '6-10'
Más 'mayor de 10'
Terminar como identificación
Del empleado;

La salida se muestra "1-5"Donde la" identificación "se encuentra entre"1" a "5","6-10" donde el "Identificación"Se encuentra en"6" a "10"De lo contrario, si no se cumplen ambas condiciones, la salida se muestra"Mayor de 10":

Declaración de caso con múltiples condiciones utilizando operador lógico "y"

El "CASO"La declaración puede definir múltiples condiciones utilizando la lógica"Y"Operador. La sintaxis para el "CUANDO"Operador con múltiples condiciones utilizando el"Y"El operador se da a continuación:

SELECCIONAR *,
CASO
Cuando [condición_1] y [condición_2] entonces [salida]
Cuando [condición_3] y [condición_4] entonces [salida]
Else [salida]
FIN AS [Nombre de columna]
De [Nombre de tabla];

Veamos un ejemplo para "SELECCIONAR""Identificación","Nombre de empresa" y "Nombre de contactoColumnas de la tabla "empleado"Para mostrar"Categoría 1" Si el "Ciudad" y "País"Son iguales a"Osaka" y "Japón"Respectivamente o mostrar"Categoría #2"Si son iguales a"Londres" y "Reino Unido". Si las condiciones en el "CUANDO"La cláusula no cumple con el retorno"Desconocido". La salida debe mostrar en una columna llamada "Ciudad". El comando para el ejemplo dado se proporciona a continuación:

Seleccione ID, CompanyName, ContactName,
CASO
When City = 'Osaka' y Country = 'Japón' entonces 'Categoría #1'
When City = 'Londres' y Country = 'Reino Unido' entonces 'Categoría #2'
De lo contrario 'desconocido'
Terminar como ciudad
Del empleado;

La salida está mostrando una columna "Ciudad"Eso es categorizar registros basados ​​en múltiples condiciones:

Veamos otro ejemplo para "SELECCIONAR""Identificación" y "Nombre del productoColumnas de la tabla "Producto"Para mostrar"Precio bajo","Precio medio" y "Precio alto" Si el "Precio unitario"Se encuentra en los rangos definidos utilizando los operadores de comparación y el"Y"Operador entre dos condiciones en un"CUANDO"Cláusula. De lo contrario, si el "CUANDO"Las condiciones de la cláusula no se cumplen, retorno"Desconocido". La salida debe mostrar en una columna llamada "Precio unitario". El comando para el ejemplo dado se proporciona a continuación:

Seleccionar ID, nombre de producto,
CASO
Cuando unitprice> = 1 y unitprice = 16 y unitprice = 31 entonces 'alto precio'
De lo contrario 'desconocido'
Fin como un unitpricio
Del producto;

La salida se muestra en la columna "Precio unitario":

Declaración de caso con múltiples condiciones utilizando el operador lógico "o"

El "CASO"La declaración puede definir múltiples condiciones utilizando la lógica"O"Operador. La sintaxis para el "CUANDO"Operador con múltiples condiciones utilizando el"O"El operador se da a continuación:

SELECCIONAR *,
CASO
Cuando [condición_1] o [condición_2] entonces [salida]
Cuando [condición_3] o [condición_4] entonces [salida]
Else [salida]
FIN AS [Nombre de columna]
De [Nombre de tabla];

Veamos un ejemplo, para "SELECCIONAR""Identificación","Nombre de empresa" y "Nombre de contactoColumnas de la tabla "empleado"Para mostrar categorías si el"Ciudad" y "País"Son iguales a un cierto valor. El operador "o" se usa entre dos condiciones en un "CUANDO"Cláusula. De lo contrario, si el "CUANDO"Las condiciones de la cláusula no se cumplen, retorno"Desconocido". La salida debe mostrar en una columna llamada "Ciudad". El comando para el ejemplo dado se proporciona a continuación:

Seleccione ID, CompanyName, ContactName,
CASO
When City = 'Osaka' o Country = 'Japón' entonces 'Categoría #1'
When City = 'Londres' o Country = 'Reino Unido' entonces 'Categoría #2'
Cuando país = 'USA' entonces 'Categoría #3'
De lo contrario 'desconocido'
Terminar como ciudad
Del empleado;

La salida está mostrando los valores en la columna "Ciudad"Extraído a través de"CASO"Declaración con múltiples condiciones:

Veamos otro ejemplo, para "SELECCIONAR""Identificación","Nombre de pila","Apellido" y "TeléfonoColumnas de la tabla "Cliente"Para mostrar categorías si el"Ciudad" o el "País"El valor es igual a los valores definidos. Si las condiciones en el "CUANDO"La cláusula no cumple, regresa"Desconocido". La salida debe mostrar en una columna llamada "Ciudad". El comando para el ejemplo dado se proporciona a continuación:

Seleccione ID, FirstName, LastName, Teléfono,
CASO
When City = 'Berlin' o Country = 'Alemania' entonces 'Categoría #1'
When City = 'Londres' o Country = 'Reino Unido' entonces 'Categoría #2'
When City = 'Luleå' o Country = 'Sweden' entonces 'Categoría #3'
When City = 'Estrasbourg' o país = 'Francia' entonces 'Categoría #4'
When City = 'Graz' o Country = 'Austria' entonces 'Categoría #5'
De lo contrario 'desconocido'
Terminar como ciudad
Del cliente;

La consulta ejecutará y devolverá la salida que contiene la columna "Ciudad"Para mostrar categorías de acuerdo con múltiples condiciones:

Eso resume todos los diferentes métodos para usar la declaración de caso con múltiples condiciones.

Conclusión

El "CASO"La declaración en MySQL se usa para definir la lógica compleja y dinámica definiendo múltiples condiciones en una"CUANDO"Cláusula usando la lógica"Y" y "O"Operadores. El "DEMÁSLa cláusula se ejecuta si no se cumple condición. Al final de la declaración, asegúrese de utilizar la palabra clave "finalizar".