Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
2
respuestas

Duda en el CASE

Porque copia nuevamente el CASE despues del GROUP BY ? en la ultima consulta gracias.

2 respuestas

¡Hola Ruben!

El motivo por el cual se repite el CASE después del GROUP BY en la última consulta es porque se está utilizando una función de agregación en conjunto con el CASE.

Cuando se utiliza una función de agregación, como SUM() o COUNT(), en una consulta que contiene un GROUP BY, es necesario repetir el CASE en la cláusula GROUP BY para que el resultado sea agrupado correctamente.

Aquí tienes un ejemplo para que sea más claro:

Supongamos que tenemos una tabla llamada "ventas" con las siguientes columnas: "producto", "cantidad" y "precio". Queremos obtener la suma de las cantidades vendidas por cada producto, pero también queremos clasificarlos en "bajo" si la cantidad es menor a 10, "medio" si es entre 10 y 50, y "alto" si es mayor a 50.

La consulta sería así:

SELECT producto, CASE WHEN cantidad < 10 THEN 'bajo' WHEN cantidad >= 10 AND cantidad <= 50 THEN 'medio' ELSE 'alto' END AS clasificacion, SUM(cantidad) AS total_cantidad FROM ventas GROUP BY producto, CASE WHEN cantidad < 10 THEN 'bajo' WHEN cantidad >= 10 AND cantidad <= 50 THEN 'medio' ELSE 'alto' END;

En este caso, necesitamos repetir el CASE en la cláusula GROUP BY para que la clasificación se agrupe correctamente.

Espero que esto resuelva tu duda. ¡Si tienes alguna otra pregunta, estaré encantado de ayudarte!

¡Espero haber ayudado y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios! :)

Hola!! Rafaela tengo la misma duda, ademas lo intente hacer con un ejemplo y me funciona si solo escribo el case una vez antes del FROM, pero no se si es porque mi ejemplo es diferente.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

y en el caso que duplico el case ya no me muestra el resultado, revise la sintaxis y no vi nada mal.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad