

 Amazon Redshift non supporterà più la creazione di nuovi Python UDFs a partire dalla Patch 198. Python esistente UDFs continuerà a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il [post del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Funzione finestra RATIO\$1TO\$1REPORT
<a name="r_WF_RATIO_TO_REPORT"></a>

Calcola il rapporto di un valore per la somma dei valori in una finestra o partizione. Il rapporto con il valore del report viene determinato utilizzando la formula:

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

Il seguente insieme di dati dimostra l'uso di questa formula:

```
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
```

L'intervallo del valore di restituzione è compreso tra 0 e 1, con questi valori compresi. Se *ratio\$1expression* è NULL, allora il valore restituito è `NULL`. Se un valore in *partition\$1expression* è unico, la funzione restituirà `1` per quel valore.

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

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

## Arguments (Argomenti)
<a name="r_WF_RATIO_TO_REPORT-arguments"></a>

*ratio\$1expression*   
Un'espressione, come ad esempio un nome di colonna, che fornisce il valore per cui determinare il rapporto. L'espressione deve avere o un tipo di dati numerici o essere implicitamente convertibile in uno.  
Non è possibile utilizzare altre funzioni analitiche in *ratio\$1expression*.

OVER  
Una clausola che specifica il partizionamento della finestra. La clausola OVER non può contenere una specifica del frame della finestra o dell'ordinamento della finestra.

PARTITION BY *partition\$1expression*   
Opzionale. Un'espressione che imposta l'intervallo di registrazioni per ciascun gruppo nella clausola OVER.

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

FLOAT8

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

Gli esempi seguenti usano la tabella WINSALES. Per informazioni su come creare la tabella WINSALES, consulta [Tabella di esempio per gli esempi della funzione finestra](c_Window_functions.md#r_Window_function_example).

L'esempio seguente calcola il ratio-to-report valore di ogni riga della quantità di un venditore rispetto al totale di tutte le quantità del venditore.

```
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
```

L'esempio seguente calcola i rapporti delle quantità di vendita per ciascun venditore per partizione:

```
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
```