Rumah  >  Artikel  >  pengaturcaraan harian  >  Hubungan antara kumpulan oleh dan mempunyai dalam mysql

Hubungan antara kumpulan oleh dan mempunyai dalam mysql

下次还敢
下次还敢asal
2024-04-27 01:57:151122semak imbas

KUMPULAN MENGIKUT data kumpulan dengan nilai yang sama dan melaksanakan fungsi agregat; data agregat.

Hubungan antara kumpulan oleh dan mempunyai dalam mysql

Hubungan antara GROUP BY dan HAVING dalam MySQL

GROUP BY dan HAVING ialah kedua-dua klausa dalam MySQL yang digunakan untuk mengagregat dan menapis data. Kedua-duanya bekerjasama untuk meringkaskan dan menapis data yang dikumpulkan.

KUMPULAN OLEH

KUMPULAN MENGIKUT klausa mengumpulkan data nilai yang sama bersama-sama dan melaksanakan fungsi agregat seperti SUM, COUNT dan AVG pada setiap kumpulan. Ia membahagikan set data kepada kumpulan yang berbeza, setiap kumpulan mempunyai nilai kunci unik atau set nilai kunci. Klausa

HAVING

HAVING digunakan untuk menapis data yang dikumpulkan mengikut GROUP BY. Ia serupa dengan klausa WHERE, tetapi hanya digunakan pada data agregat. Klausa HAVING membenarkan pengguna menapis kumpulan berdasarkan hasil pengagregatan, contohnya:

  • Tapis kumpulan dengan min tertentu
  • Tapis kumpulan yang mengandungi beberapa kumpulan yang lebih besar daripada ambang tertentu
  • Tapis kumpulan dengan nol atau bukan nol nilai

Hubungan

Hubungan antara GROUP BY dan HAVING adalah seperti berikut:

  • GROUP BY mula-mula mengumpulkan data, dan kemudian HAVING menapis data yang dikumpulkan.
  • Syarat dalam klausa HAVING mesti menggunakan fungsi agregat atau merujuk kunci kumpulan.
  • Sebelum MEMPUNYAI kumpulan penapisan, pengelompokan GROUP BY perlu dilakukan terlebih dahulu.

Contoh

Pertanyaan berikut menggunakan GROUP BY dan HAVING untuk mengumpulkan dan menapis jadual pesanan:

<code class="sql">SELECT product_category, SUM(quantity) AS total_quantity
FROM orders
GROUP BY product_category
HAVING SUM(quantity) > 100;</code>

Pertanyaan ini mengumpulkan pesanan mengikut kategori produk dan mengira jumlah kuantiti untuk setiap kategori. Ia kemudian menggunakan HAVING untuk menapis kategori yang jumlah bilangannya kurang daripada 100.

Atas ialah kandungan terperinci Hubungan antara kumpulan oleh dan mempunyai 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