sql >> Databasteknik >  >> RDS >> Mysql

Ej effektiv exekveringsplan tagen av MySQL InnoDB

MySQL kan inte optimera IN underfrågan ska vara ledande (exekveras endast en gång), den exekveras alltid för varje post i huvudfrågan i en loop.

Ersätt den med en join:

SELECT ahp.*
FROM   ar_records ar
JOIN   ah_problems ahp
ON     ahp.rnid = ar.rnid
       AND ahp.fieldId IN (5, 6)
WHERE  ar.rnid IN (6022342, 6256614, 5842714, 6302489)


  1. glassfish 4 &MySQL &JSTL

  2. hur man ställer in mysql datetype längd med sequelize-cli

  3. få SUMMA för varje person av person-ID

  4. Hur snabbar man på att skapa MySQL-tabeller från en stor CSV-fil?