Hola Wilder,
Parece que estás tratando de usar el comando CASE
para clasificar los productos según su precio. Observando la imagen, veo que estás utilizando el CASE
dos veces: una para la selección y otra para el agrupamiento. Esto es correcto, pero asegúrate de que ambas partes tengan la misma lógica para que el agrupamiento funcione como esperas.
Aquí tienes algunos puntos a considerar:
Alias Consistentes: Asegúrate de que los alias que usas en el SELECT
y el GROUP BY
sean consistentes. Por ejemplo, si llamas al resultado del CASE
como "Precio", usa el mismo nombre en todo el script.
Uso del CASE
: Verifica que las condiciones dentro del CASE
sean las que realmente deseas. Por ejemplo, si un precio debe ser considerado "Costoso" solo si es mayor o igual a 12, asegúrate de que esta lógica esté clara en ambas partes.
Errores de Sintaxis: La estructura de tu consulta parece correcta, pero asegúrate de que no haya errores tipográficos, como comas o puntos y comas mal colocados.
Aquí tienes un ejemplo simplificado de cómo podría estructurarse tu consulta:
SELECT
ENVASE,
SABOR,
CASE
WHEN PRECIO_DE_LISTA >= 12 THEN 'Costoso'
WHEN PRECIO_DE_LISTA >= 5 AND PRECIO_DE_LISTA < 12 THEN 'Asequible'
ELSE 'Barato'
END AS Precio,
MIN(PRECIO_DE_LISTA) AS Precio_Minimo
FROM
tabla_de_productos
WHERE
tamano = '700 ml'
GROUP BY
ENVASE,
SABOR,
Precio
ORDER BY
ENVASE;
Espero que esto te ayude a resolver tu duda. ¡Bons estudios!