Buenas tardes, para poder realizar la consulta que realiza el profesor en este punto del curso, tuve que realizar una modificación en la cláusula GROUP BY, si mebargo no obtengo el mismo resultado que se ve en el video.- Mi consulta (modificada) es la siguiente:
SELECT envase, sabor,
CASE
WHEN precio_de_lista >= 12 THEN 'Costoso'
WHEN precio_de_lista >= 5 AND precio_de_lista < 12 THEN 'Precio regular'
ELSE 'Barato'
END AS clasificacion_precio, MIN(precio_de_lista) AS precio_minimo
FROM tabla_de_productos
WHERE tamano = '700 ml'
GROUP BY envase, sabor, precio_de_lista,
CASE
WHEN precio_de_lista >= 12 THEN 'Costoso'
WHEN precio_de_lista >= 5 AND precio_de_lista < 12 THEN 'Precio regular'
ELSE 'Barato'
END
ORDER BY precio_de_lista;
select * from tabla_de_productos where tamano = '700 ml';
La cual arroja el siguiente resultado:
Por otro lado, la consulta y resultado del profesor es la siguiente: El problema es que si utilizo la consulta como fue realizada en el video explicativo, obtengo el siguiente error: Error Code: 1055. Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'jugosventas.tabladeproductos.PRECIODELISTA' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sqlmode=onlyfullgroupby
Quisiera saber:
- Si me pueden explicar que significa el error, ya que no entiendo a que se refiere.-
- Si me pueden explicar por que mi consulta arroja un resultado diferente Muchas gracias!