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

Bagaimana SQLite Total() Bekerja

Dalam SQLite, total() fungsi mengembalikan jumlah semua nilai non-NULL dalam grup.

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

Fungsi ini mirip dengan sum() fungsi, kecuali dalam cara menangani input NULL. Ketika tidak ada nilai non-NULL, maka sum() mengembalikan NULL (bukan 0,0 seperti total() fungsi kembali).

Contoh

Perhatikan tabel berikut.

SELECT * FROM Products;

Hasil:

ProductId   ProductName            Price     
----------  ---------------------  ----------
1           Blue Widgets (6 Pack)  389.45    
2           Widget Holder          139.5     
3           Widget Opener          89.27     
4           Foobar Set             120.0     
5           Red Widget                    

Kita dapat menggunakan total() berfungsi untuk mendapatkan total harga.

SELECT total(Price) FROM Products;

Hasil:

738.22

Meskipun harga baris terakhir adalah NULL, total() function dapat menanganinya, karena ia menambahkan semua nilai non-NULL dan mengabaikan nilai NULL.

Semua Nilai NULL

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

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

Hasil:

0.0      

Di sinilah total() dan sum() berbeda. Dalam hal ini, sum() akan mengembalikan NULL.

total() fungsi selalu mengembalikan nilai floating point.

Ingatlah bahwa ini tidak sesuai dengan standar SQL. Jika Anda ingin menggunakan kode yang sesuai standar, gunakan sum() .

Dapatkan Total Subset

Berikut contoh lain yang menggunakan WHERE klausa untuk mengembalikan subset dari tabel.

SELECT total(Price) 
FROM Products
WHERE ProductId > 2;

Hasil:

209.27

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 total(Price) 
FROM Products
WHERE Price < 150;

Hasil:

348.77 

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara yang benar untuk menangani Bi directional 1:m di Green-DAO

  2. SQLite - Adakah perbedaan antara batasan tabel UNIK &batasan kolom UNIK?

  3. Hapus Kueri Dan Segarkan di ListView di Android (sqlite)

  4. Buat Batasan CHECK di SQLite

  5. Bagaimana Unicode() Bekerja di SQLite