En este nuevo post vamos a ver la cláusula de MySQL HAVING, su misión es agrupar los resultados idénticos devueltos de una consulta SELECT.
Otras sentencias de MySQL que os pueden ser útiles:
Veamos la sintaxis extraída de su web oficial:
SELECT nombre_columnas FROM nombre_tablas GROUP BY nombre_columnas HAVING condición
Repasamos la sintaxis:
Veamos con esta serie de ejemplos la funcionalidad de esta cláusula HAVING:
SELECT nombre_producto, precio_producto FROM productos GROUP BY nombre_producto HAVING MIN(precio_producto) < 20
Os explico este primer ejemplo en donde tenemos una tabla donde se guardan los precios históricos de los productos de una tienda, necesitamos mostrar el precio más barato de los productos cuyo valor está por debajo de 20 euros.
SELECT nombre_producto, MIN(precio_producto) FROM productos GROUP BY nombre_producto HAVING MIN(precio_producto) < 20 ORDER BY MIN(precio_producto) ASC
En este nuevo ejemplo hemos añadido una ordenación para que muestre los precios de menor a mayor, para ellos hemos añadido un ORDER BY sobre el precio mínimo.