Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengira JUMLAH COUNT Berkumpulan dalam SQL?

Bagaimana untuk Mengira JUMLAH COUNT Berkumpulan dalam SQL?

Barbara Streisand
Barbara Streisandasal
2024-12-23 01:09:181042semak imbas

How to Calculate the SUM of Grouped COUNTs in SQL?

Mengira JUMLAH COUNT Dikumpulkan dalam Pertanyaan SQL

Dalam SQL, pengumpulan data adalah penting untuk meringkaskan dan menganalisis set data yang besar. Apabila bekerja dengan data terkumpul, adalah berguna untuk mengira jumlah nilai terkumpul juga. Artikel ini menunjukkan cara untuk mencapai ini menggunakan jadual contoh dan pertanyaan SQL praktikal.

Pertimbangkan jadual dengan dua medan: ID dan Nama. Setiap rekod mewakili individu, dan beberapa rekod boleh mempunyai nama yang sama. Kami mahu mengumpulkan data mengikut Nama dan mengira bilangan rekod dalam setiap kumpulan. Selain itu, kami ingin menambah baris pada penghujung untuk memaparkan jumlah kiraan semua rekod.

Untuk mencapai ini, kami boleh menggunakan pertanyaan SQL berikut:

SELECT name, COUNT(name) AS count, SUM(COUNT(name)) OVER() AS total_count
FROM Table
GROUP BY name;

Pecahan Pertanyaan:

  1. PILIH klausa: Memilih medan nama dan mengira kiraan rekod dalam setiap kumpulan (COUNT(nama)) sebagai kiraan.
  2. SUM() OVER() klausa: Mengira jumlah nilai kiraan untuk semua kumpulan menggunakan SUM( ) fungsi dengan fungsi tetingkap OVER(). Ini mencipta lajur baharu yang dipanggil total_count.
  3. KUMPULAN MENGIKUT klausa: Himpunkan hasil mengikut medan nama.

Keputusan:

Pertanyaan mengembalikan perkara berikut keputusan:

Charlie
Nama Kiraan Jumlah Kira
Alfa 1 6
Beta 3 6
2 6
Name Count Total Count
Alpha 1 6
Beta 3 6
Charlie 2 6
SUM 6 6
JUMLAH

6 6
The Baris SUM pada penghujung memaparkan jumlah kiraan semua rekod, iaitu 6 dalam contoh ini.

Atas ialah kandungan terperinci Bagaimana untuk Mengira JUMLAH COUNT Berkumpulan dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn