Rumah >pangkalan data >tutorial mysql >Bagaimana Mengira Rekod dalam Kumpulan dan Dapatkan Jumlah Kiraan dalam SQL?

Bagaimana Mengira Rekod dalam Kumpulan dan Dapatkan Jumlah Kiraan dalam SQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-18 23:57:11242semak imbas

How to Count Records within Groups and Get the Total Count in SQL?

Rekod kiraan selepas GROUP BY dalam SQL

Apabila menggunakan pertanyaan SQL GROUP BY yang termasuk SELECT, selalunya perlu juga untuk mengira jumlah rekod. Begini cara untuk melakukannya secara langsung dalam pernyataan SQL:

Untuk mengira jumlah rekod dalam setiap kumpulan, hanya gunakan COUNT fungsi agregat dengan GROUP BY. Sebagai contoh, katakan anda mempunyai jadual pengguna dan ingin menyenaraikan bandar unik serta bilangan pengguna dalam setiap bandar:

<code class="language-sql">SELECT `town`, COUNT(`town`)
FROM `user`
GROUP BY `town`;</code>

Pertanyaan ini akan mengembalikan jadual dengan dua lajur: town, mewakili nama bandar unik COUNT(town), menunjukkan jumlah pengguna dalam setiap bandar.

Selain itu, anda boleh menggunakan fungsi agregat lain dengan GROUP BY, seperti MAX, MIN, COUNT DISTINCT, dsb.

Kemas kini:

Anda juga mungkin mahu mendapatkan semula jumlah pengguna di semua bandar. Untuk melakukan ini, anda boleh menentukan pembolehubah menggunakan COUNT fungsi agregat:

<code class="language-sql">DECLARE @numOfUsers INT;
SET @numOfUsers = (SELECT COUNT(*) FROM `user`);</code>

Anda kemudian boleh memilih bandar yang berbeza dan pembolehubah yang ditakrifkan sebelum ini:

<code class="language-sql">SELECT DISTINCT `town`, @numOfUsers FROM `user`;</code>

Ini akan menyediakan senarai bandar bersama-sama dengan jumlah pengguna.

Atas ialah kandungan terperinci Bagaimana Mengira Rekod dalam Kumpulan dan Dapatkan Jumlah Kiraan 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