MAXfungsi jendela - Amazon Redshift

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

MAXfungsi jendela

Fungsi MAX jendela mengembalikan maksimum nilai ekspresi masukan. MAXFungsi ini bekerja dengan nilai numerik dan mengabaikan NULL nilai.

Sintaks

MAX ( [ ALL ] expression ) OVER ( [ PARTITION BY expr_list ] [ ORDER BY order_list frame_clause ] )

Argumen

ekspresi

Kolom target atau ekspresi tempat fungsi beroperasi.

ALL

Dengan argumenALL, fungsi mempertahankan semua nilai duplikat dari ekspresi. ALLadalah default. DISTINCT tidak didukung.

OVER

Sebuah klausa yang menentukan klausa jendela untuk fungsi agregasi. OVERKlausa membedakan fungsi agregasi jendela dari fungsi agregasi set normal.

PARTITIONOLEH expr_list

Mendefinisikan jendela untuk MAX fungsi dalam hal satu atau lebih ekspresi.

ORDEROLEH order_list

Mengurutkan baris dalam setiap partisi. Jika tidak ada PARTITION BY yang ditentukan, ORDER BY menggunakan seluruh tabel.

frame_clause

Jika klausa ORDER BY digunakan untuk fungsi agregat, klausa bingkai eksplisit diperlukan. Klausa bingkai menyempurnakan kumpulan baris di jendela fungsi, termasuk atau mengecualikan kumpulan baris dalam hasil yang diurutkan. Klausa bingkai terdiri dari ROWS kata kunci dan penentu terkait. Lihat Ringkasan sintaks fungsi jendela.

Jenis data

Menerima tipe data apa pun sebagai input. Mengembalikan tipe data yang sama sebagai ekspresi.

Contoh

Contoh berikut menunjukkan ID penjualan, kuantitas, dan kuantitas maksimum dari awal jendela data:

select salesid, qty, max(qty) over (order by salesid rows unbounded preceding) as max from winsales order by salesid; salesid | qty | max ---------+-----+----- 10001 | 10 | 10 10005 | 30 | 30 10006 | 10 | 30 20001 | 20 | 30 20002 | 20 | 30 30001 | 10 | 30 30003 | 15 | 30 30004 | 20 | 30 30007 | 30 | 30 40001 | 40 | 40 40005 | 10 | 40 (11 rows)

Untuk deskripsi WINSALES tabel, lihatContoh tabel untuk contoh fungsi jendela.

Contoh berikut menunjukkan salesid, kuantitas, dan kuantitas maksimum dalam bingkai terbatas:

select salesid, qty, max(qty) over (order by salesid rows between 2 preceding and 1 preceding) as max from winsales order by salesid; salesid | qty | max ---------+-----+----- 10001 | 10 | 10005 | 30 | 10 10006 | 10 | 30 20001 | 20 | 30 20002 | 20 | 20 30001 | 10 | 20 30003 | 15 | 20 30004 | 20 | 15 30007 | 30 | 20 40001 | 40 | 30 40005 | 10 | 40 (11 rows)