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

Mengapa menggunakan IN(...) saat memilih bidang yang diindeks, akan mematikan kinerja kueri SELECT?

Sejujurnya, pernyataan itu bertentangan dengan banyak petunjuk yang saya baca di buku dan artikel tentang MySQL.

Berikut ini contohnya:http://www.mysqlperformanceblog.com/2010/01/09/getting-around-optimizer-limitations-with-an-in-list/

Selain itu, expr IN(value, ...) sendiri memiliki peningkatan tambahan untuk menangani daftar nilai besar, karena seharusnya digunakan sebagai alternatif yang berguna untuk range tertentu pertanyaan:

Masih menggunakan IN secara berlebihan dapat mengakibatkan kueri yang lambat. Beberapa kasus dicatat dalam artikel .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara SUM dari MySQL untuk setiap n record

  2. Saya memiliki array bilangan bulat, bagaimana cara menggunakan masing-masing dalam kueri mysql (dalam php)?

  3. Mengapa koneksi MySQL diblokir dari banyak kesalahan koneksi?

  4. Tabel Database, lebih banyak lebih baik?

  5. Tidak dapat mengambil data dari database ke tag skrip saat menggunakan grafik