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

Memahami dampak kinerja untuk pencarian tuple mysql

Menurut pertanyaan ini , dukungan untuk tupel di MySQL tidak dioptimalkan. Seperti yang ditulis @O.Jones dalam komentarnya, perencana kueri di MySQL adalah binatang yang sangat kompleks, dan hal-hal yang seharusnya pekerjaan tidak selalu berperilaku seperti yang Anda harapkan.

Saya yakin kueri kedua Anda lebih cepat karena klausa pertama where dept_id in (101, 103) mengurangi ruang pencarian untuk yang kedua yang menggunakan tupel. Pengoptimal kueri harus lakukan ini secara otomatis, tetapi setidaknya dalam contoh Anda tidak melakukannya.

Saya tidak percaya IN klausa adalah masalahnya - ini adalah perbandingan Tuple yang memindai seluruh tabel dan tidak menggunakan indeks yang tersedia.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP MySQL beberapa permintaan pencarian menggunakan opsi / pilih tag formulir HTML

  2. Dapatkan produk baris (perkalian)

  3. Bagaimana cara terhubung ke beberapa database dalam satu halaman PHP?

  4. MySQL sih... tidak bisa konek ke database /tmp/mysql.sock

  5. Jumlah item MySQL di dalam klausa