

 O Amazon Redshift não permitirá mais a criação de UDFs do Python a partir do Patch 198. As UDFs do Python existentes continuarão a funcionar normalmente até 30 de junho de 2026. Para ter mais informações, consulte a [publicação de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# Função de janela NTILE
<a name="r_WF_NTILE"></a>

 A função de janela NTILE divide as linhas ordenadas na partição no número especificado de grupos classificados de tamanho o mais igual possível e retorna o grupo em que dada linha se encontra. 

## Sintaxe
<a name="r_WF_NTILE-synopsis"></a>

```
NTILE (expr)
OVER ( 
[ PARTITION BY expression_list ] 
[ ORDER BY order_list ]
)
```

## Argumentos
<a name="r_WF_NTILE-arguments"></a>

 *expr*   
O número de grupos de classificação, devendo resultar em um valor inteiro positivo (maior que 0) para cada partição. O argumento da *expr* não deve ser anulável. 

OVER   
 Uma cláusula que especifica o particionamento e ordenação da janela. A cláusula OVER não pode conter uma especificação de quadro da janela. 

PARTITION BY *window\$1partition*   
Opcional. O intervalo de registros para cada grupo na cláusula OVER. 

ORDER BY *window\$1ordering*   
Opcional. Uma expressão que classifica as linhas dentro de cada partição. Se a cláusula ORDER BY for omitida, o comportamento da classificação será o mesmo.  
Se ORDER BY não produzir uma ordenação exclusiva, a ordem das linhas será não determinística. Para obter mais informações, consulte [Ordenação exclusiva de dados para funções da janela](c_Window_functions.md#r_Examples_order_by_WF). 

## Tipo de retorno
<a name="r_WF_NTILE-return-type"></a>

BIGINT

## Exemplos
<a name="r_WF_NTILE-examples"></a>

 As seguintes classificações de exemplo classifica o preço pago por ingressos de Hamlet em 26 de agosto de 2008 em quatro grupos de classificação. O conjunto de resultados é 17 linhas, divididas quase uniformemente entre as classificações 1 a 4: 

```
select eventname, caldate, pricepaid, ntile(4)
over(order by pricepaid desc) from sales, event, date
where sales.eventid=event.eventid and event.dateid=date.dateid and eventname='Hamlet'
and caldate='2008-08-26'
order by 4;

eventname |  caldate   | pricepaid | ntile
-----------+------------+-----------+-------
Hamlet    | 2008-08-26 |   1883.00 |     1
Hamlet    | 2008-08-26 |   1065.00 |     1
Hamlet    | 2008-08-26 |    589.00 |     1
Hamlet    | 2008-08-26 |    530.00 |     1
Hamlet    | 2008-08-26 |    472.00 |     1
Hamlet    | 2008-08-26 |    460.00 |     2
Hamlet    | 2008-08-26 |    355.00 |     2
Hamlet    | 2008-08-26 |    334.00 |     2
Hamlet    | 2008-08-26 |    296.00 |     2
Hamlet    | 2008-08-26 |    230.00 |     3
Hamlet    | 2008-08-26 |    216.00 |     3
Hamlet    | 2008-08-26 |    212.00 |     3
Hamlet    | 2008-08-26 |    106.00 |     3
Hamlet    | 2008-08-26 |    100.00 |     4
Hamlet    | 2008-08-26 |     94.00 |     4
Hamlet    | 2008-08-26 |     53.00 |     4
Hamlet    | 2008-08-26 |     25.00 |     4
(17 rows)
```