SQLite
 sql >> Teknologi Basis Data >  >> RDS >> SQLite

Bagaimana SQLite Sum() Bekerja

SQLite sum() fungsi mengembalikan jumlah semua nilai non-NULL dalam grup.

Jika tidak ada nilai non-NULL, maka akan mengembalikan NULL.

Fungsi ini pada dasarnya memungkinkan Anda untuk menjumlahkan semua nilai dalam kumpulan hasil atau tabel.

Contoh

Berikut ini contoh untuk mendemonstrasikan penggunaannya.

SELECT sum(Price) FROM Products; 

Hasil:

738,22

Contoh ini mungkin tidak ada artinya jika Anda tidak dapat melihat nilai sebenarnya dalam tabel.

Berikut kueri yang mengembalikan semua baris dalam tabel itu.

SELECT * FROM Products; 

Hasil:

ProductId ProductName Harga ---------- --------------------- ----------1 Blue Widgets (6 Paket) 389.45 2 Pemegang Widget 139.5 3 Pembuka Widget 89.27 4 Set Foobar 120.0 5 Widget Merah 

Jadi sum() fungsi cukup menambahkan semua nilai di Harga kolom.

Perhatikan bahwa harga baris terakhir adalah NULL. Tidak apa-apa. sum() fungsi hanya menambahkan semua nilai non-NULL.

Nilai NULL

Jika tidak ada nilai non-NULL, maka hasilnya adalah NULL.

SELECT sum(Price) 
FROM Products
WHERE ProductId = 5; 

Hasil:

  

(Itu sengaja dikosongkan, karena mengembalikan NULL).

Ini berbeda dengan cara SQLite total() fungsi berhubungan dengan nilai NULL (mengembalikan 0.0). Keduanya sum() dan total() melakukan hal yang sama, kecuali untuk perbedaan ini.

Set Hasil Lebih Kecil

Contoh pertama menambahkan semua baris dalam tabel. Tapi itu tidak harus seluruh meja. Seperti yang terlihat pada contoh “NULL”, Anda juga dapat menggunakan WHERE klausa untuk menambahkan subset nilai dalam tabel.

Berikut contoh lain yang menggunakan WHERE ayat.

SELECT sum(Price) 
FROM Products
WHERE ProductId < 3; 

Hasil:

528,95

Kali ini menambahkan nilai non-NULL, jadi saya mendapatkan hasil non-NULL.

Ini satu lagi yang memfilter menurut kolom yang sama yang saya tambahkan.

SELECT sum(Price) 
FROM Products
WHERE Price > 100; 

Hasil:

648,95

Input Non-Bilangan Bulat

Jika ada input yang bukan bilangan bulat atau NULL maka sum() mengembalikan nilai floating point yang mungkin merupakan perkiraan jumlah sebenarnya.

Anda mungkin mendapatkan beberapa hasil yang tidak terduga dalam kasus seperti itu.

Di bawah ini adalah contoh yang mencoba menambahkan sekelompok nomor faks.

Pertama, mari kita lihat daftar nomor faks.

SELECT Fax FROM Customer 
WHERE Fax IS NOT NULL; 

Hasil:

Faks ------------------+55 (12) 3923-5566+420 2 4172 5555 +55 (11) 3033-4564+55 (11) 3055- 8131+55 (21) 2271-7070+55 (61) 3363-7855+1 (780) 434-5565 +1 (604) 688-8756 +1 (650) 253-0000 +1 (425) 882-8081 + 1 (212) 221-4679 +1 (408) 996-1011 

Sekarang inilah yang terjadi jika saya mencoba menambahkannya.

SELECT sum(Fax) 
FROM Customer; 

Hasil:

701.0 

Dalam hal ini tampaknya telah menambahkan semua awalan.

Inilah yang terjadi jika saya menggunakan sum() pada kolom string.

SELECT sum(ProductName) 
FROM Products; 

Hasil:

0.0

Kata Kunci YANG BERBEDA

Anda dapat menambahkan DISTINCT kata kunci untuk menambahkan hanya nilai yang berbeda. Untuk melakukannya, gunakan sum(DISTINCT X) dimana X adalah nama kolom.

Lihat Cara Menambahkan Nilai Berbeda dengan SQLite Sum() sebagai contoh.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hapus SQLite

  2. SQLite Listview onclick memfilter db untuk membuka hasil dalam aktivitas baru

  3. inisialisasi database sqlite android

  4. Perangkap dan jebakan SQLite

  5. Android SQLiteDB tidak selesai menambahkan nilai