Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk melakukan pengiraan pengagregatan data dalam MySQL?

Bagaimana untuk melakukan pengiraan pengagregatan data dalam MySQL?

王林
王林asal
2023-07-30 09:41:181557semak imbas

MySQL ialah sistem pengurusan pangkalan data hubungan yang biasa digunakan dengan keupayaan pemprosesan data dan pengkomputeran yang berkuasa. Dalam aplikasi praktikal, kita selalunya perlu melakukan pengiraan pengagregatan pada data untuk mendapatkan keputusan statistik atau menjalankan analisis. Artikel ini akan memperkenalkan cara melakukan pengiraan pengagregatan data dalam MySQL, termasuk fungsi pengagregatan biasa dan contoh penggunaan.

1. Fungsi agregat biasa

Dalam MySQL, satu siri fungsi agregat disediakan untuk statistik dan pengiraan pada data. Berikut ialah beberapa fungsi agregat biasa:

  1. JUMLAH: Kira jumlah lajur data tertentu.
  2. AVG: Kira purata lajur data tertentu.
  3. KIRA: Kira bilangan baris bagi lajur data tertentu.
  4. MIN: Kira nilai minimum lajur data tertentu.
  5. MAX: Kira nilai maksimum lajur data tertentu.
  6. GROUP_CONCAT: Sambungkan lajur data tertentu.

2. Contoh penggunaan fungsi agregat

Yang berikut akan menggunakan contoh khusus untuk menunjukkan cara menggunakan fungsi agregat dalam MySQL untuk melakukan pengiraan pengagregatan data.

  1. Contoh fungsi SUM:

Andaikan terdapat jadual skor pelajar yang mengandungi dua lajur: nama pelajar dan markah subjek. Kami ingin mengira jumlah markah setiap pelajar, yang boleh dicapai menggunakan fungsi SUM.

SELECT student_name, SUM(score) AS total_score
FROM student_scores
GROUP BY student_name;

Dalam kod di atas, mula-mula pilih nama pelajar dan lajur gred, dan gunakan fungsi SUM untuk menjumlahkan lajur gred. Kemudian gunakan klausa GROUP BY untuk mengumpulkan mengikut nama pelajar, dan akhirnya gunakan kata kunci AS untuk memberikan hasil agregat alias.

  1. Contoh fungsi AVG:

Teruskan menggunakan jadual gred pelajar di atas, kita boleh mengira gred purata untuk setiap subjek.

SELECT subject, AVG(score) AS average_score
FROM student_scores
GROUP BY subject;

Dalam kod di atas, pilih lajur subjek dan gred, dan gunakan fungsi AVG untuk mengira purata lajur gred. Kemudian gunakan klausa GROUP BY untuk mengumpulkan mengikut akaun.

  1. COUNT contoh fungsi:

Andaikan sekarang kita perlu mengira bilangan pelajar dalam jadual pelajar.

SELECT COUNT(*) AS student_count
FROM students;

Dalam kod di atas, bilangan baris dalam jadual pelajar dikira dengan menggunakan fungsi COUNT. Memandangkan kami ingin mengira semua pelajar, kami menggunakan aksara * kad bebas, dan kemudian menggunakan kata kunci AS untuk memberikan hasil agregat alias.

  1. Contoh fungsi MIN dan MAX:

Kami terus menggunakan jadual prestasi pelajar untuk mengira markah minimum dan maksimum bagi setiap pelajar.

SELECT student_name, MIN(score) AS min_score, MAX(score) AS max_score
FROM student_scores
GROUP BY student_name;

Dalam kod di atas, nilai minimum dan maksimum skor dikira masing-masing dengan menggunakan fungsi MIN dan fungsi MAX. Juga gunakan klausa GROUP BY untuk mengumpulkan mengikut nama pelajar.

  1. GROUP_CONCAT contoh fungsi:

Andaikan sekarang kita ingin menyambungkan gred setiap pelajar dalam jadual gred pelajar dengan koma.

SELECT student_name, GROUP_CONCAT(score) AS scores
FROM student_scores
GROUP BY student_name;

Dalam kod di atas, fungsi GROUP_CONCAT digunakan untuk menyambung data dalam lajur gred, dan klausa GROUP BY digunakan untuk mengumpulkan mengikut nama pelajar.

Ringkasan:

MySQL menyediakan satu siri fungsi agregat untuk statistik dan pengiraan pada data. Melalui contoh mudah, kami belajar cara menggunakan fungsi seperti SUM, AVG, COUNT, MIN, MAX dan GROUP_CONCAT untuk melaksanakan pengiraan pengagregatan data. Dalam aplikasi praktikal, digabungkan dengan keperluan perniagaan tertentu, kami boleh menggunakan fungsi pengagregatan ini secara fleksibel untuk mencapai analisis data dan operasi pemprosesan yang lebih kompleks.

Atas ialah kandungan terperinci Bagaimana untuk melakukan pengiraan pengagregatan data dalam MySQL?. 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