Si aprendes a usar correctamente la PL-SQL Function AVG Oracle podrás obtener rápidamente datos promedios en las consultas a la Base de Datos en tus PL-SQL Packages en Oracle.
La PL-SQL Function AVG Oracle es muy útil cuando necesitas obtener el valor promedio o la media de un campo numérico, esta función se puede usar para promediar todos los datos de una tabla o también para promediar grupos de datos en tus PL-SQL Packages en Oracle.
La sintaxis de la PL-SQL Function AVG Oracle es la siguiente:
/* PL-SQL Function AVG Oracle */
AVG( [DISTINCT | ALL] n)
Al usar la PL-SQL Function AVG Oracle por defecto promedia todos los valores n de una tabla (ALL), pero también se puede indicar que solo promedie los valores n que son distintos (DISTINCT) en tus PL-SQL Packages en Oracle.
Revisemos algunos ejemplos prácticos para que entiendas mejor como se debe utilizar la PL-SQL Function AVG Oracle en tus PL-SQL Packages en Oracle.
Ejemplo #1: Supone que necesitas saber cual es el sueldo promedio de los empleados de un departamento, veamos como se hace:
/* PL-SQL Function AVG Oracle */
Select AVG(emp.sueldo) sueldo_promedio
From tb_empleado emp
Where emp.id_departamento = pin_id_departamento;
/* PL-SQL Function AVG Oracle */
En este ejemplo se obtiene el sueldo promedio de los empleados de un departamento en particular usando la PL-SQL Function AVG Oracle.
TÚ REPORTE: “Cómo Construir un SELECT Eficiente en ORACLE en Solo 7 Pasos”
Ejemplo #2: Supone ahora que necesitas obtener el sueldo promedio de los empleados pero por cada departamento, veamos como se hace:
/* PL-SQL Function AVG Oracle */
Select emp.id_departamento, AVG(DISTINCT emp.sueldo) sueldo_promedio
From tb_empleado emp
Group By emp.id_departamento;
/* PL-SQL Function AVG Oracle */
En este ejemplo se esta obteniendo el sueldo promedio de cada departamento, para esto se crean grupos de datos por el id_departamento con la cláusula GROUP BY, fíjate que además solo se promedian los sueldos que son distintos al usar la cláusula DISTINCT dentro de la PL-SQL Function AVG Oracle.
Te propongo que pruebes de inmediato estos ejemplos en tu Base de Datos con tus propias tablas, PL-SQL Procedures en Oracle y PL-SQL Function en Oracle, para que comiences a ejercitar la mano y aprendas a dominar esta nueva técnica en tus PL-SQL Packages en Oracle.
Estoy muy interesado en conocer tu opinión y/o comentario sobre este artículo, también cuéntame sobre qué es lo que quieres saber de PL-SQL Function en Oracle y/o dime cuál es tu principal frustración a la hora de trabajar con PL-SQL Function en Oracle. Estaré muy atento respondiendo tus preguntas y/o comentarios, gracias.
Saludos
Roberto Vicencio – Escritor del Reporte:
“Cómo Construir un SELECT Eficiente en ORACLE en Solo 7 Pasos”
Buen día.
Es interesante como desarrolla el articulo con referencia a PL-SQL Oracle.
La verdad estoy buscando una manera de hacer ‘modificable’ el avg, ya que esta función obtiene la media de las filas, pero necesito que esa media sea modificable (normalmente lo hace al 50%, pero quiero que este sea modificable a decisión del usuario).
Espero me haya dado a entender.
Gracias de antemano y que tenga un buen día.
Hola Karen, gracias por comunicarte, lo que necesitas hacer es muy específico, lo mejor en estos casos es que crees tu propia función avg que no es difícil ya que puedes usar las funciones de grupo como sum y count, gracias.
PD: Si te ha gustado lo que has visto del blog te invito a compartir el enlace https://dominatuspackagesen0racle.com/ con tus amigos o personas que también les pueda interesar ver esta información, gracias.
Saludos
Roberto Vicencio – Para Tu Éxito con Oracle.