View a markdown version of this page

Fungsi SUM - Amazon Redshift

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

Fungsi SUM mengembalikan jumlah kolom input atau nilai ekspresi. Fungsi SUM bekerja dengan nilai numerik dan mengabaikan nilai NULL.

Sintaksis

SUM ( [ DISTINCT | ALL ] expression )

Argumen

ekspresi

Kolom target atau ekspresi tempat fungsi beroperasi. Ekspresi adalah salah satu tipe data berikut:

  • SMALLINT

  • INTEGER

  • BIGINT

  • NUMERIC

  • DECIMAL

  • REAL

  • PRECISON GANDA

  • SUPER

BERBEDA | SEMUA

Dengan argumen DISTINCT, fungsi menghilangkan semua nilai duplikat dari ekspresi yang ditentukan sebelum menghitung jumlah. Dengan argumen ALL, fungsi mempertahankan semua nilai duplikat dari ekspresi untuk menghitung jumlah. ALL adalah default.

Jenis Data

Jenis argumen yang didukung oleh fungsi SUM adalah SMALLINT, INTEGER, BIGINT, NUMERIC, DECIMAL, REAL, DOUBLE PRECISION, dan SUPER.

Jenis pengembalian yang didukung oleh fungsi SUM adalah

  • BIGINT untuk argumen BIGINT, SMALLINT, dan INTEGER

  • NUMERIK untuk argumen NUMERIK

  • PRESISI GANDA untuk argumen floating point

  • Mengembalikan tipe data yang sama sebagai ekspresi untuk jenis argumen lainnya.

Presisi default untuk hasil fungsi SUM dengan argumen NUMERIK atau DECIMAL adalah 38. Skala hasilnya sama dengan skala argumen. Misalnya, SUM kolom DEC (5,2) mengembalikan tipe data DEC (38,2).

Contoh

Temukan jumlah semua komisi yang dibayarkan dari tabel PENJUALAN:

select sum(commission) from sales; sum ------------- 16614814.65 (1 row)

Temukan jumlah kursi di semua tempat di negara bagian Florida:

select sum(venueseats) from venue where venuestate = 'FL'; sum -------- 250411 (1 row)

Temukan jumlah kursi yang terjual pada bulan Mei:

select sum(qtysold) from sales, date where sales.dateid = date.dateid and date.month = 'MAY'; sum ------- 32291 (1 row)