Rumah >pangkalan data >SQL >Perbezaan antara mempunyai dan di mana dalam sql
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 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
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!