

 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 RATIO\$1TO\$1REPORT
<a name="r_WF_RATIO_TO_REPORT"></a>

Calcula a proporção de um valor para a soma dos valores em uma janela ou partição. O valor da proporção de relatório é determinado usando a fórmula:

`value of `*ratio\$1expression* `argument for the current row / sum of` *ratio\$1expression* `argument for the window or partition`

O seguinte conjunto de dados ilustra O uso desta fórmula:

```
Row#	Value	Calculation	RATIO_TO_REPORT
1	2500	(2500)/(13900)	0.1798
2	2600	(2600)/(13900)	0.1870
3	2800	(2800)/(13900)	0.2014
4	2900	(2900)/(13900)	0.2086
5	3100	(3100)/(13900)	0.2230
```

O intervalo de valor de retorno é 0 a 1, inclusive. Se *ratio\$1expression* for NULL, o valor de retorno será `NULL`. Se um valor em *partition\$1expression* for exclusivo, a função retornará `1` para esse valor.

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

```
RATIO_TO_REPORT ( ratio_expression )
OVER ( [ PARTITION BY partition_expression ] )
```

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

*ratio\$1expression*   
Uma expressão, tal como um nome de coluna, que fornece o valor para o qual determinar a proporção. A expressão deve ter um tipo de dados numérico ou ser implicitamente conversível para um.  
Você não pode usar qualquer outra função analítica em *ratio\$1expression*.

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

PARTITION BY *partition\$1expression*   
Opcional. Uma expressão que define o intervalo de registros para cada grupo na cláusula OVER.

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

FLOAT8

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

Os exemplos a seguir usam a tabela WINSALES. Para obter informações sobre como criar a tabela WINSALES, consulte [Amostra de tabela para exemplos de funções de janela](c_Window_functions.md#r_Window_function_example).

O exemplo a seguir calcula o valor da proporção em relação ao relatório de cada linha da quantidade de um vendedor em relação ao total de todas as quantidades do vendedor.

```
select sellerid, qty, ratio_to_report(qty) 
over()
from winsales
order by sellerid;

sellerid  qty    ratio_to_report
--------------------------------------
1         30     0.13953488372093023	
1         10     0.046511627906976744	
1         10     0.046511627906976744	
2         20     0.09302325581395349	
2         20     0.09302325581395349	
3         30     0.13953488372093023	
3         20     0.09302325581395349	
3         15     0.06976744186046512	
3         10     0.046511627906976744	
4         10     0.046511627906976744	
4         40     0.18604651162790697
```

O seguinte exemplo calcula as proporções das quantidades de vendas para cada vendedor por partição:

```
select sellerid, qty, ratio_to_report(qty) 
over(partition by sellerid) 
from winsales;

sellerid   qty    ratio_to_report
-------------------------------------------
2          20     0.5	
2          20     0.5	
4          40     0.8	
4          10     0.2	
1          10     0.2	
1          30     0.6	
1          10     0.2	
3          10     0.13333333333333333	
3          15     0.2	
3          20     0.26666666666666666	
3          30     0.4
```