SQLite
 sql >> Baza danych >  >> RDS >> SQLite

SQLite COUNT

Podsumowanie :w tym samouczku dowiesz się, jak korzystać z SQLite COUNT funkcja, aby uzyskać liczbę elementów w grupie.

Wprowadzenie do SQLite COUNT() funkcja

Funkcja COUNT() to funkcja agregująca, która zwraca liczbę elementów w grupie.

Na przykład możesz użyć COUNT() funkcja, aby uzyskać liczbę utworów z tracks tabela, liczba artystów z artists stół i tak dalej.

Poniżej przedstawiono podstawową składnię COUNT funkcja:

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

Argumenty

COUNT funkcja zachowuje się zgodnie z przekazanymi do niej argumentami i opcją ALL lub DISTINCT które określisz.

Poniżej opisano znaczenie ALL i DISTINCT opcje:

  • ALL :po określeniu wszystkich, COUNT() funkcja zlicza wszystkie wartości inne niż null obejmują duplikaty. COUNT() funkcja używa ALL opcja domyślna, jeśli ją pominiesz.
  • DISTINCT :jeśli jawnie używasz DISTINCT opcja COUNT funkcja liczy tylko wartości unikalne i niepuste.

Wyrażenie może być kolumną lub wyrażeniem obejmującym kolumny, do których funkcja COUNT() jest stosowany.

SQLite zapewnia inną składnię COUNT() funkcja:

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

COUNT(*) funkcja zwraca liczbę wierszy w tabeli, w tym wiersze zawierające NULL i duplikaty.

SQLite COUNT() ilustracja funkcji

Najpierw utwórz tabelę o nazwie t1 który ma jedną kolumnę:

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

Po drugie, wstaw pięć wierszy do t1 tabela:

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

Po trzecie, zapytaj o dane z t1 tabela:

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

Po czwarte, użyj COUNT(*) funkcja zwracająca liczbę wierszy w t1 tabela:

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

Jak widać wyraźnie z danych wyjściowych, zestaw wyników zawiera NULL i zduplikowane wiersze.

Po piąte, użyj COUNT(expression) aby uzyskać liczbę wartości innych niż null w kolumnie c :

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

W tym przykładzie COUNT(c) zwraca liczbę wartości innych niż null. Liczy zduplikowane wiersze jako osobne wiersze.

Po szóste, użyj COUNT(DISTINCT expression) aby uzyskać liczbę unikalnych i niepustych wartości w kolumnie c :

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

SQLite COUNT(*) przykłady

Weźmiemy stół tracks w przykładowej bazie danych, aby zademonstrować funkcjonalność COUNT(*) funkcja.

1) SQLite COUNT(*) przykład

Aby uzyskać liczbę wierszy z tracks tabeli, użyj COUNT(*) działają w następujący sposób:

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

Wypróbuj

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

2) SQLite COUNT(*) z WHERE przykład klauzuli

Poniższa instrukcja używa COUNT(*) funkcja z WHERE klauzula, aby znaleźć liczbę utworów, których identyfikator albumu to 10:

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

Wypróbuj

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

3) SQLite COUNT(*) z GROUP BY przykład klauzuli

Aby uzyskać wszystkie albumy i liczbę utworów w każdym albumie, połącz COUNT(*) funkcja z GROUP BY klauzula:

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

Wypróbuj

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

W tym przykładzie:

  • Po pierwsze, GROUP BY grupuj utwory klauzul według identyfikatora albumu.
  • Następnie COUNT(*) funkcja zwraca liczbę utworów dla każdego albumu lub grupy utworów.

4) SQLite COUNT(*) z HAVING przykład klauzuli

Poniższe używa COUNT(*) w HAVING klauzula dotycząca wyszukiwania albumów zawierających więcej niż 25 utworów:

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

Wypróbuj

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

5) SQLite COUNT(*) z INNER JOIN przykład klauzuli

Aby dane wyjściowe powyższego zapytania były bardziej przydatne, możesz dołączyć kolumnę nazwy albumu. Aby to zrobić, dodaj INNER JOIN i ORDER BY klauzule do zapytania, takie jak następujące zapytanie:

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)

Wypróbuj

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

SQLite COUNT(DISTINCT expression) przykłady

Przyjrzyjmy się employees tabela z przykładowej bazy danych.

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

Wypróbuj

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

Aby uzyskać liczbę tytułów pozycji, przekazujesz title kolumnę do COUNT() działają w następujący sposób:

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

Wypróbuj

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

Jednak, aby uzyskać liczbę unikalnych tytułów, musisz dodać DISTINCT opcję COUNT() działają tak, jak pokazano w następującym oświadczeniu:

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

Wypróbuj

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

W tym samouczku pokazaliśmy, jak korzystać z SQLite COUNT() funkcja zliczania liczby elementów w grupie.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Połącz SQLite Count() z GROUP BY, aby dodać kolumnę „Count” do zestawu wyników

  2. Zapytanie SQLite w Androidzie za pomocą kursora

  3. W przypadku metody aktualizacji nie jest wywoływana w Androidzie sqlite

  4. Jak zacząć korzystać z SQLCipher dla Androida?

  5. Aktualizacja z parametrem przy użyciu biblioteki trwałej pomieszczenia