Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Apa perbedaan semantik antara WHERE dan HAVING?

HAVING beroperasi pada baris yang diringkas - WHERE beroperasi di seluruh tabel sebelum GROUP BY diterapkan. (Anda tidak dapat memasukkan GROUP BY selain itu, HAVING adalah klausa yang disediakan untuk digunakan dengan GROUP BY - tinggalkan GROUP BY tidak mengubah tindakan implisit yang terjadi di balik layar).

Penting juga untuk dicatat bahwa karena ini, WHERE dapat menggunakan indeks saat HAVING tidak bisa. (Dalam set hasil un-grouped yang sangat sepele, Anda secara teoritis dapat menggunakan indeks untuk HAVING , tapi saya belum pernah melihat pengoptimal kueri yang benar-benar diimplementasikan dengan cara ini).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. C# Konektor MySQL

  2. pencarian sphinx untuk kecocokan kata kunci parsial

  3. Cara SELECT berdasarkan nilai SELECT lainnya

  4. Tabel Pivot Menggunakan MySQL

  5. Kesalahan mentransfer database dari MySql ke Postgres menggunakan mysql2pgsql