Rumah  >  Artikel  >  pangkalan data  >  Apakah Perintah Pelaksanaan Klausa GROUP BY, HAVING, dan WHERE dalam SQL Server?

Apakah Perintah Pelaksanaan Klausa GROUP BY, HAVING, dan WHERE dalam SQL Server?

DDD
DDDasal
2024-10-30 20:50:30565semak imbas

What is the Execution Order of GROUP BY, HAVING, and WHERE Clauses in SQL Server?

Urutan Pelaksanaan Kumpulan Mengikut, Mempunyai, dan Klausa Dimana dalam Pelayan SQL

Dalam pengaturcaraan SQL, memahami urutan pelaksanaan pelbagai klausa ialah penting untuk pengoptimuman pertanyaan yang cekap. Artikel ini akan menyelidiki urutan khusus klausa GROUP BY, HAVING, dan WHERE dalam SQL Server.

Jujukan Pelaksanaan:

SQL Server melaksanakan arahan berikut dalam tertib berikut:

  1. DARI dan SERTAI: Langkah ini mengenal pasti dan menggabungkan data daripada jadual yang ditentukan, berdasarkan syarat gabungan (jika ada).
  2. WHERE: Klausa WHERE menapis data yang telah dipilih dalam langkah 1, mengalih keluar mana-mana baris yang tidak memenuhi kriteria yang ditentukan.
  3. KUMPULAN OLEH: Baris daripada langkah sebelumnya dikumpulkan berdasarkan lajur yang ditentukan dalam klausa GROUP BY.
  4. HAVING: Klausa HAVING menggunakan penapis pada kumpulan yang dibuat dalam langkah 3, mengalih keluar mana-mana kumpulan yang tidak memenuhi kriteria yang ditentukan .
  5. PESANAN OLEH: Klausa ORDER BY menyusun baris atau kumpulan yang tinggal dalam susunan yang ditentukan.
  6. HAD: Klausa LIMIT mengehadkan keputusan kepada bilangan baris atau kumpulan tertentu.

Contoh:

Pertimbangkan pertanyaan berikut:

SELECT SUM(salary) AS total_salary
FROM employees
WHERE department = 'HR'
GROUP BY department
HAVING SUM(salary) > 50000
ORDER BY total_salary DESC

Dalam pertanyaan ini , data dipilih daripada jadual "pekerja" (langkah 1). Klausa WHERE menapis data untuk memasukkan hanya pekerja dalam jabatan "HR" (langkah 2). Klausa GROUP BY menggabungkan pekerja dari jabatan yang sama ke dalam kumpulan (langkah 3). Klausa HAVING mengeluarkan kumpulan dengan jumlah gaji kurang daripada 50,000 (langkah 4). Klausa ORDER BY menyusun kumpulan dalam susunan menurun jumlah gaji (langkah 5).

Atas ialah kandungan terperinci Apakah Perintah Pelaksanaan Klausa GROUP BY, HAVING, dan WHERE dalam SQL Server?. 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