Calcula el
valor promedio de una columna numérica o expresión en un grupo. Su sintaxis es:
AVG([DISTINCT
| ALL] expr);
La sintaxis
puede ser descompuesta:
AVG(DISTINCT
expr)
AVG(ALL expr)
AVG(expr)
Cuando AVG(DISTINCT expr) es invocada, los valores distintos de expr
son sumados y son divididos entre el numero de ocurrencias únicas de expr. AVG(ALL
expr) y AVG(expr) suman los valores no nulos de expr y divide la suma entre el
numero de filas no nulas en un grupo. El
tipo de dato del parámetro es NUMBER.
Ejemplos:
-- OBTENER EL PROMEDIO DE LOS SALARIOS DE LOS EMPLEADOS CON MANAGER_ID
124
-- AUTOMATICAMENTE AVG DESCARTA NULOS PARA OBTENER EL PROMEDIO
SELECT AVG(salary) FROM HR.employees WHERE manager_id = 124 ORDER BY
employee_id;
SELECT AVG(ALL salary) FROM HR.employees WHERE manager_id = 124 ORDER
BY employee_id;
-- OBTENER EL PROMEDIO DE LOS SALARIOS UNICOS DE LOS EMPLEADOS CON
MANAGER_ID 124
-- AUTOMATICAMENTE AVG DESCARTA NULOS PARA OBTENER EL PROMEDIO
SELECT AVG(DISTINCT salary) FROM HR.employees WHERE manager_id = 124
ORDER BY employee_id;
-- OBTENER EL PROMEDIO DE LOS SALARIOS DE LOS EMPLEADOS POR MANAGER_ID
-- AUTOMATICAMENTE AVG DESCARTA NULOS PARA OBTENER EL PROMEDIO
SELECT department_id, AVG(ALL salary) FROM HR.employees GROUP BY
department_id ORDER BY department_id;
Comentarios
Publicar un comentario