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

Menggunakan IN dengan subquery tidak menggunakan indeks

Anda dapat melihat jawaban untuk pertanyaan ini Anda akan mendapatkan ide yang bagus.

Saya mengutip dari beberapa jawaban

Secara singkat, Coba paksa indeks:

SELECT *
FROM mapping_channel_fqdn_virtual_host FORCE INDEX (name of the index you want to use)
WHERE (mapping_channel_fqdn_virtual_host.id IN (1,2,3,4,5,6,7,8,9,10));

Atau gunakan JOIN sebagai gantinya dan lihat penjelasannya

SELECT * FROM mapping_channel_fqdn_virtual_host mcf
JOIN (select max(id) as ids from mapping_channel_fqdn_virtual_host group by channel_id, fqdn_virtual_host_id)) AS mcfv 
ON mcf.id = mcfv.ids;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. jQuery Autocomplete (Jarak Jauh) - contoh

  2. Mengapa saya mendapatkan kesalahan sintaks saat menggunakan CAST di MySQL?

  3. Sisipkan baris hanya ketika id dari tabel lain ada

  4. Dapatkan mysqldump untuk membuang data yang cocok untuk input psql (lolos dari tanda kutip tunggal)

  5. Catat peringatan ke dalam tabel