Ringkasan :dalam tutorial ini, Anda akan belajar bagaimana menggunakan SQLite SUM berfungsi untuk menghitung jumlah semua nilai.
Pengantar SQLite SUM fungsi
SUM fungsi adalah fungsi agregat yang mengembalikan jumlah nilai non-NULL atau hanya nilai yang berbeda dalam grup.
Ekspresi berikut mengilustrasikan sintaks SUM fungsi:
SUM([ALL | DISTINCT] expression);Code language: SQL (Structured Query Language) (sql)
SUM fungsi menggunakan ALL klausa secara default. Ini berarti bahwa semua nilai input, apakah duplikat atau tidak, dipertimbangkan ketika SUM fungsi melakukan perhitungan.
Jika Anda ingin menghitung jumlah unik nilai, Anda harus menentukan DISTINCT klausa secara eksplisit dalam ekspresi.
Hasil dari SUM fungsi adalah bilangan bulat jika semua nilai input non-NULL adalah bilangan bulat. Jika ada nilai input yang bukan bilangan bulat atau NULL nilai, hasil dari SUM fungsi adalah nilai floating-point.
Hasil dari SUM fungsinya adalah NULL jika dan hanya jika semua nilai input adalah NULL .
Jika terjadi kesalahan integer overflow dan semua nilai input adalah NULL atau bilangan bulat, SUM fungsi melempar pengecualian integer overflow.
SQLite SUM contoh fungsi
Kami akan menggunakan tracks tabel dalam database sampel untuk demonstrasi.
Untuk mendapatkan total panjang semua trek di tracks tabel, Anda menggunakan SUM berfungsi sebagai pernyataan berikut:
SELECT
SUM(milliseconds)
FROM
tracks;Code language: SQL (Structured Query Language) (sql) Cobalah
SQLite SUM fungsi dengan GROUP BY klausa
Untuk menghitung total panjang setiap album, Anda perlu menggunakan SUM berfungsi dengan GROUP BY klausa.
Pertama, GROUP BY klausa mengelompokkan satu set trek berdasarkan album. Kemudian, SUM fungsi menghitung jumlah panjang trek per album.
Pernyataan berikut menggambarkan ide tersebut:
SELECT
AlbumId,
SUM(milliseconds)
FROM
tracks
GROUP BY
AlbumId;Code language: SQL (Structured Query Language) (sql) Cobalah
SQLite SUM fungsi dan INNER JOIN contoh klausa
Untuk memasukkan judul album dalam output, Anda bergabung dengan tracks tabel ke albums tabel menggunakan INNER JOIN klausa sebagai berikut:
SELECT
tracks.albumid,
title,
SUM(milliseconds)
FROM
tracks
INNER JOIN albums ON albums.albumid = tracks.albumid
GROUP BY
tracks.albumid,
title;Code language: SQL (Structured Query Language) (sql) Cobalah
SQLite SUM fungsi dan HAVING contoh klausa
Anda dapat menggunakan SUM fungsi di HAVING klausa untuk memfilter grup berdasarkan kondisi tertentu.
Misalnya, pernyataan berikut mendapatkan semua album yang panjang totalnya lebih dari 1.000.000 milidetik:
SELECT
tracks.albumid AlbumId,
Title,
SUM(milliseconds)
FROM
tracks
INNER JOIN albums ON albums.albumid= tracks.albumid
GROUP BY
tracks.albumid,
title
HAVING
SUM(milliseconds) > 1000000;Code language: SQL (Structured Query Language) (sql) Cobalah
Dalam tutorial ini, kami telah memperkenalkan Anda ke SQLite SUM fungsi yang mengembalikan jumlah nilai dalam grup.