KomputerPengaturcaraan

HAVING SQL: perihalan, sintaks, contoh

SQL adalah bahasa standard untuk bekerja dengan pangkalan data hubungan. Dia mempunyai alat senjata yang banyak untuk memanipulasi data yang disimpan dalam bentuk jadual.

Tidak dinafikan, keupayaan untuk mengumpulkan data apabila ia dicontohi oleh ciri tertentu adalah salah satu alat tersebut. Pernyataan SQL HAVING , bersama dengan klausa WHERE, membolehkan anda menentukan syarat persampelan untuk data yang dikumpulkan dalam beberapa cara.

HAVING parameter SQL: huraian

Pertama sekali, perlu diperhatikan bahawa parameter ini adalah pilihan dan digunakan secara eksklusif bersempena dengan parameter KUMPULAN BY. Seperti yang anda ingat, GROUP BY digunakan apabila SELECT menggunakan fungsi agregat, dan hasil pengiraannya mesti diperoleh untuk kumpulan tertentu. Jika WHERE membolehkan anda menetapkan syarat untuk pemilihan sebelum data dikumpulkan, maka HAVING mengandungi syarat-syarat yang berkaitan dengan data yang sudah ada dalam kumpulan itu sendiri. Untuk pemahaman yang lebih baik, mari kita lihat contoh dengan gambarajah yang ditunjukkan dalam gambar di bawah.

Ini adalah contoh yang baik, memberikan gambaran HAVING SQL. Jadual diberikan dengan senarai nama produk, syarikat yang menghasilkannya, dan beberapa bidang lain. Dalam pertanyaan di penjuru kanan atas, kami cuba mendapatkan maklumat tentang berapa banyak nama produk yang dihasilkan oleh setiap syarikat, sementara kami hanya ingin mengeluarkan mereka yang menghasilkan lebih daripada 2 tajuk. Parameter BY GROUP membentuk tiga kumpulan yang sepadan dengan nama syarikat, untuk setiap daripadanya bilangan produk (baris) dikira. Tetapi parameter HAVING dengan keadaannya memotong satu kumpulan dari sampel yang dihasilkan, kerana ia tidak memenuhi syarat. Akibatnya, kami mendapat dua kumpulan yang sepadan dengan syarikat dengan bilangan produk 5 dan 3.

Satu soalan mungkin timbul tentang mengapa menggunakan HAVING jika terdapat WHERE di SQL. Jika kita menggunakan WHERE, ia akan melihat jumlah baris di dalam jadual, bukan dalam kumpulan, dan keadaan tidak masuk akal dalam kes ini. Walau bagaimanapun, mereka sering wujud bersama dengan satu permintaan.

Dalam contoh di atas, kita dapat melihat bagaimana data tersebut dipilih pertama kali oleh nama pekerja yang dinyatakan dalam parameter WHERE, dan hasilnya dikumpulkan dalam GROUP BY melewati pemeriksaan tambahan pada jumlah gaji untuk setiap pekerja.

Parameter SQL HAVING: contoh, sintaks

Mari kita perhatikan beberapa ciri khas sintaks HAVING SQL. Penerangan parameter ini agak mudah. Pertama, seperti yang telah dinyatakan, ia digunakan semata-mata bersempena dengan parameter KUMPULAN OLEH dan ditentukan dengan serta-merta selepas itu dan sebelum ORDER BY, jika ada satu dalam pertanyaan tersebut. Boleh difahami, kerana HAVING mentakrifkan syarat untuk data yang dikumpulkan. Kedua, dalam keadaan parameter ini, Anda hanya boleh menggunakan fungsi agregat dan medan yang ditentukan dalam parameter GROUP BY. Semua syarat dalam parameter ini ditentukan tepat dengan cara yang sama seperti dalam kes WHERE.

Kesimpulannya

Seperti yang anda dapat lihat, tidak ada yang rumit dalam pengendali ini. Secara semantik ia digunakan dengan cara yang sama seperti WHERE. Adalah penting untuk memahami bahawa WHERE digunakan relatif kepada semua data yang boleh dipilih, dan HAVING hanya berkaitan dengan kumpulan yang ditentukan dalam parameter GROUP BY. Kami membentangkan keterangan lengkap untuk HAVING SQL, yang cukup untuk mempercayai dengannya.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ms.delachieve.com. Theme powered by WordPress.