La función LISTAGG se utiliza, para pivotar filas en una única columna concatenando los valores con un separador indicado. LA diferencia con la función PIVOT, es que pivota un valor a una columna sin combinarlas en el mismo campo (ver artículo PIVOT). Como alternativas en versiones anteriores podía utilizar CASE, pero no era dinámico, o la función COLLECT, pero es
Las funciones FIRST_VALUE() y LAST_VALUE() proporcionan el valor inicial y final en una lista ordenada respectivamente. FIRST_VALUE: Obtendría el primer valor LAST_VALUE: Obtendría el último valor SINTAXIS: función (<expresion_valor_1> [,<offset> [, <valor_por_defecto> ]]) OVER ([PARTITION BY <expresion_valor_3> [,<expresion_valor_4>, …]]) ORDER BY <expresion_valor_2> [ASC|DESC] [NULLS FIRST | NULLS LAST] [,…] [ventana]) siendo ventana: [ROWS|RANGE] inicio AND fin función – FIRST_VALUE o
ROW_NUMBER, RANK y DENSE_RANK son funciones de ordenación dentro de una partición. La función ROW_NUMBER es una función analítica, que asigna un valor único dentro una partición según un orden determiado. El valor parte de 1. Diferencias entre ROW_NUMBER, RANK y DENSE_RANK sería: ROW_NUMBER: asigna numeros contiguos y unicos desde 1 hasta el último según la ordenación y por cada
Con las funciones LAG() y LEAD() se obtienen el valor anterior o posterior en una lista ordenada. Con estas funciones se evita la necesidad de realizar un join con la misma tabla. LAG: Obtendría el valor del registro anterior LEAD: Obtendría el valor del registro posterior SINTAXIS: función (<expresion_valor_1> [,<offset> [, <valor_por_defecto> ]]) OVER ([PARTITION BY <expresion_valor_3> [,<expresion_valor_4>, …]]) ORDER
PIVOT, permite trasponer filas a columnas y UNPIVOT, permite el paso inverso, el paso de columnas a filas. Están disponibles a partir de la versión Oracle 11G. La mismo que se realiza mediante PIVOT y UNPIVOT, se podía realizar en versiones anteriores, mediante funciones de decodificación, pero son menos eficiente y si había muchos valores podría ser bastante engorroso. EJEMPLO
Si continúas usando este sitio, aceptas el uso de cookies. Más información
Los ajustes de cookies en esta web están configurados para «permitir las cookies» y ofrecerte la mejor experiencia de navegación posible. Si sigues usando esta web sin cambiar tus ajustes de cookies o haces clic en «Aceptar», estarás dando tu consentimiento a esto.