Rumah  >  Artikel  >  pangkalan data  >  Perbezaan antara mempunyai dan di mana dalam sql

Perbezaan antara mempunyai dan di mana dalam sql

下次还敢
下次还敢asal
2024-05-07 05:00:221162semak imbas

Dalam SQL, HAVING dan WHERE kedua-duanya digunakan untuk menapis data, tetapi perbezaannya ialah WHERE menapis baris individu, manakala HAVING menapis hasil fungsi agregat. WHERE digunakan selepas klausa FROM dan HAVING digunakan selepas klausa GROUP BY. WHERE penapis berdasarkan nilai dalam baris, manakala HAVING penapis berdasarkan hasil agregat.

Perbezaan antara mempunyai dan di mana dalam sql

Perbezaan antara HAVING dan WHERE dalam SQL

Dalam SQL, HAVING dan WHERE kedua-dua kata kunci digunakan untuk menapis data, tetapi terdapat perbezaan yang jelas dalam penggunaannya:

menapis Rows

WHERE Klausa WHERE digunakan untuk menapis baris individu dalam jadual. Ia digunakan dalam pernyataan SELECT, selepas klausa FROM. WHERE hanya mempertimbangkan nilai dalam satu baris dan menyimpan atau memadamkannya berdasarkan syarat yang ditentukan.

Contohnya:

<code class="sql">SELECT * FROM users WHERE age > 18;</code>
Pertanyaan di atas akan memilih semua pengguna yang berumur lebih daripada 18 tahun.

MEMILIKI kumpulan penapis

Klausa HAVING digunakan untuk menapis hasil fungsi agregat (seperti SUM, COUNT, AVG). Ia digunakan selepas klausa GROUP BY untuk menapis kumpulan berdasarkan hasil agregat.

Contohnya:

<code class="sql">SELECT department, COUNT(*) AS employee_count
FROM users
GROUP BY department
HAVING employee_count > 10;</code>
Pertanyaan di atas akan memilih jabatan yang mempunyai lebih daripada 10 pekerja.

Ringkasan

  • WHERE menapis baris individu, manakala HAVING menapis hasil fungsi agregat.
  • WHERE digunakan selepas klausa FROM dan HAVING digunakan selepas klausa GROUP BY.
  • WHERE adalah berdasarkan nilai dalam baris, manakala HAVING adalah berdasarkan hasil agregat.
🎜

Atas ialah kandungan terperinci Perbezaan antara mempunyai dan di mana 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