Masa Pelaksanaan Penyata MySQL Berlebihan
Semasa cuba untuk melaksanakan pertanyaan pada pangkalan data besar yang mengandungi kira-kira 1 juta rekod, masa pelaksanaan yang berpanjangan ditemui. Khususnya, pertanyaan yang mengambil rekod daripada jadual "penilaian" adalah sangat perlahan:
Walaupun menggunakan indeks pada lajur "id", masalah itu berterusan. Walau bagaimanapun, mengurangkan saiz jadual kepada 10,000 rekod menghasilkan masa pertanyaan yang jauh lebih pantas.
Penjelasan:
Setelah meneliti pelan pertanyaan menggunakan pernyataan "EXPLAIN", ia adalah mendedahkan bahawa pertanyaan asal menggunakan imbasan jadual penuh, yang membawa kepada pelaksanaan yang tidak cekap. Sebaliknya, apabila klausa "di mana" ditambahkan, imbasan indeks julat yang lebih cekap telah digunakan, meningkatkan prestasi secara mendadak.
Pertimbangan:
Menggunakan Klausa "di mana" untuk menapis hasil boleh meningkatkan prestasi pertanyaan dengan ketara dengan menggunakan indeks yang sesuai.
Ia adalah penting untuk memastikan bahawa tiada kebuntuan berlaku dalam pangkalan data, yang juga boleh menyebabkan pelaksanaan pertanyaan yang lembap.
Atas ialah kandungan terperinci Mengapa Pertanyaan MySQL Saya Sangat Lambat, Walaupun dengan Indeks?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!