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

JUMLAH SQLite

Ringkasan :dalam tutorial ini, Anda akan belajar bagaimana menggunakan SQLite COUNT berfungsi untuk mendapatkan jumlah item dalam satu grup.

Pengantar SQLite COUNT() fungsi

Fungsi COUNT() adalah fungsi agregat yang mengembalikan jumlah item dalam grup.

Misalnya, Anda dapat menggunakan COUNT() berfungsi untuk mendapatkan jumlah trek dari tracks tabel, jumlah artis dari artists tabel, dan seterusnya.

Berikut ini mengilustrasikan sintaks dasar COUNT fungsi:

COUNT([ALL | DISTINCT] expression);Code language: SQL (Structured Query Language) (sql)

Argumen

COUNT fungsi berperilaku sesuai dengan argumen yang Anda berikan ke dalamnya dan opsi ALL atau DISTINCT yang Anda tentukan.

Berikut ini menjelaskan arti dari ALL dan DISTINCT pilihan:

  • ALL :ketika Anda menentukan semua, COUNT() fungsi menghitung semua nilai bukan nol termasuk duplikat. COUNT() fungsi menggunakan ALL opsi secara default jika Anda melewatkannya.
  • DISTINCT :jika Anda secara eksplisit menggunakan DISTINCT opsi, COUNT fungsi hanya menghitung nilai unik dan bukan nol.

Ekspresi dapat berupa kolom atau ekspresi yang melibatkan kolom yang fungsinya COUNT() diterapkan.

SQLite menyediakan sintaks lain dari COUNT() fungsi:

COUNT(*)Code language: SQL (Structured Query Language) (sql)

COUNT(*) fungsi mengembalikan jumlah baris dalam tabel, termasuk baris termasuk NULL dan duplikat.

SQLite COUNT() ilustrasi fungsi

Pertama, buat tabel bernama t1 yang memiliki satu kolom:

CREATE TABLE t1(c INTEGER);Code language: SQL (Structured Query Language) (sql)

Kedua, masukkan lima baris ke dalam t1 tabel:

INSERT INTO t1(c)
VALUES(1),(2),(3),(null),(3);Code language: SQL (Structured Query Language) (sql)

Ketiga, query data dari t1 tabel:

SELECT * FROM t1;Code language: SQL (Structured Query Language) (sql)

Keempat, gunakan COUNT(*) berfungsi untuk mengembalikan jumlah baris dalam t1 tabel:

SELECT COUNT(*) FROM t1;Code language: SQL (Structured Query Language) (sql)

Seperti yang dapat Anda lihat dengan jelas dari output, kumpulan hasil menyertakan NULL dan baris duplikat.

Kelima, gunakan COUNT(expression) untuk mendapatkan jumlah nilai bukan nol di kolom c :

SELECT COUNT(c) FROM t1;Code language: SQL (Structured Query Language) (sql)

Dalam contoh ini, COUNT(c) mengembalikan jumlah nilai bukan nol. Ini menghitung baris duplikat sebagai baris terpisah.

Keenam, gunakan COUNT(DISTINCT expression) untuk mendapatkan jumlah nilai unik dan bukan nol di kolom c :

SELECT COUNT(DISTINCT c) FROM t1;Code language: SQL (Structured Query Language) (sql)

SQLite COUNT(*) contoh

Kami akan mengambil tabel tracks dalam database sampel untuk mendemonstrasikan fungsionalitas COUNT(*) fungsi.

1) SQLite COUNT(*) contoh

Untuk mendapatkan jumlah baris dari tracks tabel, Anda menggunakan COUNT(*) fungsinya sebagai berikut:

SELECT count(*)
FROM tracks;Code language: SQL (Structured Query Language) (sql)

Cobalah

count(*)
--------
3503Code language: plaintext (plaintext)

2) SQLite COUNT(*) dengan WHERE contoh klausa

Pernyataan berikut menggunakan COUNT(*) berfungsi dengan WHERE klausa untuk menemukan jumlah lagu yang id albumnya 10:

SELECT COUNT(*)
FROM tracks
WHERE albumid = 10;Code language: SQL (Structured Query Language) (sql)

Cobalah

COUNT(*)
--------
14

3) SQLite COUNT(*) dengan GROUP BY contoh klausa

Untuk mendapatkan semua album dan jumlah trek di setiap album, Anda menggabungkan COUNT(*) berfungsi dengan GROUP BY klausa:

SELECT
	albumid,
	COUNT(*)
FROM
	tracks
GROUP BY
	albumid;Code language: SQL (Structured Query Language) (sql)

Cobalah

AlbumId  COUNT(*)
-------  --------
1        10
2        1
3        3
4        8
5        15
6        13
7        12
8        14
9        8
10       14
...

Dalam contoh ini:

  • Pertama, GROUP BY klausa mengelompokkan trek menurut id album.
  • Kemudian, COUNT(*) fungsi mengembalikan jumlah trek untuk setiap album atau grup trek.

4) SQLite COUNT(*) dengan HAVING contoh klausa

Berikut ini menggunakan COUNT(*) di HAVING klausa untuk menemukan album yang memiliki lebih dari 25 lagu:

SELECT
   albumid,
   COUNT(*)
FROM
   tracks
GROUP BY
   albumid
HAVING COUNT(*) > 25Code language: SQL (Structured Query Language) (sql)

Cobalah

AlbumId  COUNT(*)
-------  --------
23       34
73       30
141      57
229      26

5) SQLite COUNT(*) dengan INNER JOIN contoh klausa

Untuk membuat output dari kueri di atas lebih bermanfaat, Anda dapat menyertakan kolom nama album. Untuk melakukan ini, Anda menambahkan INNER JOIN dan ORDER BY klausa ke kueri seperti kueri berikut:

SELECT
	tracks.albumid, 
	title, 
	COUNT(*)
FROM
	tracks
INNER JOIN albums ON
	albums.albumid = tracks.albumid
GROUP BY
	tracks.albumid
HAVING
	COUNT(*) > 25
ORDER BY
	COUNT(*) DESC;Code language: SQL (Structured Query Language) (sql)

Cobalah

AlbumId  Title           COUNT(*)
-------  --------------  --------
141      Greatest Hits   57
23       Minha Historia  34
73       Unplugged       30
229      Lost, Season 3  26

SQLite COUNT(DISTINCT expression) contoh

Mari kita lihat employees tabel dari database sampel.

SELECT
	employeeid,
	lastname,
	firstname,
	title
FROM
	employees;Code language: SQL (Structured Query Language) (sql)

Cobalah

EmployeeId  LastName  FirstName  Title
----------  --------  ---------  -------------------
1           Adams     Andrew     General Manager
2           Edwards   Nancy      Sales Manager
3           Peacock   Jane       Sales Support Agent
4           Park      Margaret   Sales Support Agent
5           Johnson   Steve      Sales Support Agent
6           Mitchell  Michael    IT Manager
7           King      Robert     IT Staff
8           Callahan  Laura      IT Staff

Untuk mendapatkan jumlah gelar posisi, Anda melewati title kolom ke COUNT() fungsinya sebagai berikut:

SELECT COUNT(title)
FROM employees;Code language: SQL (Structured Query Language) (sql)

Cobalah

COUNT(title)
------------
8

Namun, untuk mendapatkan jumlah judul unik, Anda perlu menambahkan DISTINCT opsi ke COUNT() fungsi seperti yang ditunjukkan pada pernyataan berikut:

SELECT COUNT(DISTINCT title)
FROM employees;Code language: SQL (Structured Query Language) (sql)

Cobalah

COUNT(DISTINCT title)
---------------------
5

Dalam tutorial ini, kami telah menunjukkan cara menggunakan SQLite COUNT() berfungsi untuk menghitung jumlah item dalam satu grup.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana menerapkan SQLCipher saat menggunakan SQLiteOpenHelper

  2. Kapan metode onCreate SQLiteOpenHelper dipanggil?

  3. Mengurutkan tanggal dalam database sqlite?

  4. bagaimana cara meluncurkan aplikasi dengan SQLite darabase di emulator Android Studio?

  5. Masalah memori SQLite dengan pendekatan tunggal