Pertanyaan MySQL: Kira bilangan kejadian nilai yang berbeza
Dalam jadual pangkalan data yang mengandungi medan sasaran tertentu, selalunya berguna untuk menentukan nilai yang berbeza dalam medan itu dan bilangan kali ia berlaku. Untuk menyelesaikan tugas ini dalam MySQL, mari kita mendalami senario tertentu:
Andaikan kita mempunyai jadual bernama tablename
yang mengandungi medan bernama name
. Kami ingin mencari semua nilai name
yang berbeza, mengira bilangan kali setiap name
muncul dan mengisih keputusan dalam tertib kiraan menurun.
Data sampel:
id | name |
---|---|
1 | Mark |
2 | Mike |
3 | Paul |
4 | Mike |
5 | Mike |
6 | John |
7 | Mark |
Keputusan yang dijangkakan:
name | count |
---|---|
Mike | 3 |
Mark | 2 |
Paul | 1 |
John | 1 |
Untuk mendapatkan hasil ini kita boleh menggunakan pertanyaan MySQL berikut:
<code class="language-sql">SELECT name, COUNT(*) AS count FROM tablename GROUP BY name ORDER BY count DESC;</code>
Penjelasan:
SELECT name, COUNT(*) AS count
: Bahagian pertanyaan ini memilih medan name
dan mengira kejadian setiap name
yang berbeza. COUNT(*)
Fungsi mengembalikan kiraan semua baris dalam kumpulan. FROM tablename
: Ini menentukan jadual dari mana data akan diambil. GROUP BY name
: Klausa ini mengumpulkan hasil mengikut medan name
, membolehkan kami mengira bilangan kejadian setiap name
yang berbeza. ORDER BY count DESC
: Akhir sekali, klausa ini mengisih keputusan dalam tertib menurun berdasarkan bilangan kejadian. Dengan melaksanakan pertanyaan ini, kami mendapat output yang diingini yang menyenaraikan nilai name
berbeza dengan kiraan masing-masing, diisih mengikut kiraan dalam tertib menurun.
Atas ialah kandungan terperinci Bagaimana Mengira Kejadian Nilai Berbeza dalam Jadual MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!