Ir al contenido principal

Entradas

Mostrando entradas de agosto 6, 2013

Funciones Grupo Anidadas

Recordando que las funciones Single-Row puede ser anidadas a cualquier nivel de profundidad. Las Funciones Grupo pueden solo ser anidadas a dos niveles de profundidad. G1( group_item ) = result G1( G2( group_item ) ) = result G1(G2 ( G3 ( group_item ) ) ) No es permitido. Las funciones grupo en este ejemplo son presentadas mediante la letra G seguida de un numero. La primera forma simple no contiene funciones anidadas. Ejemplo de ello sería SUM( group_item ) o AVG (group_item ) que devuelven un solo resultado por grupo. La segunda forma soporta dos nivel de anidamiento de funciones grupo, como SUM( AVG ( group_item ) ). En este caso una clausula GROUP BY es obligatoria desde que el valor promedio por grupo es calculado antes de ser sumado por la función SUM. La tercera forma no es permitida por Oracle.  Considere una expresión que anida tres funciones grupo. Si la función MAX es aplicada a ejemplo previo, la expresión quedaría así MAX(SUM(AVG(group_item))). Las dos funci

Las funciones MAX y MIN – Parte 2

Las funciones MAX y MIN operan sobre tipos de datos NUMBER, DATE, CHAR y VARCHAR2. Estas devuelven un tipo de datos igual al ingresado, que son el más grande o el más pequeño de un grupo. Cuando aplicamos estas funciones a elemento Fecha, MAX devuelve la más reciente y MIN devuelve la última. Las cadenas de caracteres son convertidos a su representación numérica basada en la configuración NLS de la base de datos. Su sintaxis es: MAX( [ DISTINCT | ALL ] expr); MIN( [ DISTINCT | ALL ] expr) Ejemplos: SELECT MAX(country_id), MAX(country_name), MAX(region_id),MIN(country_id), MIN(country_name), MIN(region_id) FROM   HR.countries; SELECT TO_CHAR(MAX(hire_date),'DD-MON-YYYY'), TO_CHAR(MIN(hire_date),'DD-MON-YYYY') FROM HR.employees; SELECT TO_CHAR(MAX(start_date),'DD-MON-YYYY'), TO_CHAR(MIN(start_date),'DD-MON-YYYY') FROM job_history;

La Función AVG – Parte 2

El valor promedio de una columna o expresión dividida por la suma  de registros no nulos en un grupo. La función AVG tiene la siguiente sintaxis: AVG( [ DISTINCT | ALL ] expr ) Un parámetro numérico, precedido por las palabras DISTINCT o ALL, es proveído a la función AVG, y devuelve un valor numérico. Ejemplos: SELECT AVG(2) FROM HR.countries; Este ejemplo en especial devuelve el mismo valor ingresado en AVG.