NTILE

Sintaxis

 Descripción de ntile.el gif sigue

Descripción de la ilustración ntile.gif

Consulte también:

«Funciones analíticas» para obtener información sobre sintaxis, semántica y restricciones, incluidas las formas válidas de expr

Purpose

NTILE es una función analítica. Divide un conjunto de datos ordenado en un número de cubos indicado por expr y asigna el número de cubo apropiado a cada fila. Los cubos están numerados del 1 al expr. El valor expr debe resolver a una constante positiva para cada partición. Oracle Database espera un entero, y si expr es una constante no integrada, Oracle trunca el valor a un entero. El valor devuelto es NUMBER.

El número de filas en los cucharones puede diferir como máximo en 1. Los valores restantes (el resto del número de filas divididas por cubos) se distribuyen uno por cada cubo, comenzando por el cubo 1.

Si expr es mayor que el número de filas, se llenará un número de cubos igual al número de filas y los cubos restantes estarán vacíos.

No puede usar NTILE ni ninguna otra función analítica para expr. Es decir, no puede anidar funciones analíticas, pero puede usar otras expresiones de función integradas para expr.

Consulte también:

«Acerca de expresiones SQL «para obtener información sobre formularios válidos de expr y Tabla 2-10,» Matriz de conversión de tipos implícitos » para obtener más información sobre la conversión implícita

Ejemplos

El siguiente ejemplo divide en 4 cubos los valores de la columna salary de la tabla oe.employees del Departamento 100. La columna salary tiene 6 valores en este departamento, por lo que los dos valores adicionales (el resto de 6 / 4) se asignan a los cubos 1 y 2, que por lo tanto tienen un valor más que los cubos 3 o 4.

SELECT last_name, salary, NTILE(4) OVER (ORDER BY salary DESC) AS quartile FROM employees WHERE department_id = 100;LAST_NAME SALARY QUARTILE------------------------- ---------- ----------Greenberg 12000 1Faviet 9000 1Chen 8200 2Urman 7800 2Sciarra 7700 3Popp 6900 4



+