

 Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting [ blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/) yang diterbitkan pada 30 Juni 2025. 

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Fungsi jendela RATIO\_TO\_REPORT
<a name="r_WF_RATIO_TO_REPORT"></a>

Menghitung rasio nilai dengan jumlah nilai di jendela atau partisi. Rasio terhadap nilai laporan ditentukan menggunakan rumus:

`value of `*rasio\_ekspresi rasio\_ekspresi * `argument for the current row / sum of` * * `argument for the window or partition`

Dataset berikut menggambarkan penggunaan rumus ini:

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

Rentang nilai pengembalian adalah 0 hingga 1, inklusif. Jika * ratio\_expression * adalah NULL, maka nilai kembalinya adalah. `NULL` Jika nilai dalam * partition\_expression * unik, maka fungsi akan kembali `1` untuk nilai itu.

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

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

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

*rasio\_ekspresi *   
Sebuah ekspresi, seperti nama kolom, yang memberikan nilai untuk menentukan rasio. Ekspresi harus memiliki tipe data numerik atau secara implisit dapat dikonversi menjadi satu.  
Anda tidak dapat menggunakan fungsi analitik lainnya di * ratio\_expression*.

DI ATAS  
Sebuah klausa yang menentukan partisi jendela. Klausa OVER tidak dapat berisi urutan jendela atau spesifikasi bingkai jendela.

PARTISI DENGAN * partition\_expression *   
Tidak wajib. Ekspresi yang menetapkan rentang catatan untuk setiap grup dalam klausa OVER.

## Jenis pengembalian
<a name="r_WF_RATIO_TO_REPORT-return-type"></a>

FLOAT8

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

Contoh berikut menggunakan tabel WINSALES. Untuk informasi tentang cara membuat tabel WINSALES, lihat[Tabel sampel untuk contoh fungsi jendela](c_Window_functions.md#r_Window_function_example).

Contoh berikut menghitung nilai rasio terhadap laporan dari setiap baris kuantitas penjual dengan total jumlah semua penjual.

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

Contoh berikut menghitung rasio jumlah penjualan untuk setiap penjual berdasarkan partisi.

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