====== having ====== A veces es más útil establecer una condición que se aplique a un grupo en particular. Para expresar este tipo de consultas se utiliza la cláusula group by y dentro del grupo la cláusula having. Por ejemplo select nombre-sucursal, avg (saldo) from cuenta group by nombre-sucursal having avg (saldo) > 1200 ===== having y where juntos ===== Para ilustrar el uso de la cláusula where y la cláusula having dentro de la misma consulta considérese el ejemplo «Obtener el saldo medio de cada cliente que vive en Madrid y tiene como mínimo tres cuentas». select impositor.nombre-cliente, avg (saldo) from impositor, cuenta, cliente where impositor.número-cuenta = cuenta.número-cuenta and impositor.nombre-cliente = cliente.nombre-cliente and ciudad-cliente = ‘Madrid’ group by impositor.nombre-cliente having count (distinct impositor.número-cuenta) >= 3 ===== < some, <= some, >= some, = some y <> some ===== Como otro ejemplo «Encontrar la sucursal que tiene el mayor saldo medio». En SQL, las funciones de agregación no se pueden componer. select nombre-sucursal from cuenta group by nombre-sucursal having avg (saldo) >= all (select avg (saldo) from cuenta group by nombre-sucursal) Así, no está permitido el uso de max (avg (…)).