Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mengoptimumkan Carian MySQL Menggunakan 'Suka' dengan Kad Liar Utama?
Mengoptimumkan Carian MySQL Menggunakan "Suka" dan Kad Liar
Pertanyaan MySQL menggunakan "suka" dengan kad bebas utama, seperti "PILIH * DARI sesuatu jadual DI MANA sesuatu bidang SEPERTI '%value%'" sering mengalami masalah prestasi. Kad bebas terkemuka menghalang DBMS daripada memanfaatkan indeks, mengakibatkan masa carian yang lebih perlahan.
Strategi Pengoptimuman
Satu teknik pengoptimuman yang berkesan ialah memecahkan rentetan carian kepada serpihan yang lebih kecil . Daripada menyimpan keseluruhan rentetan "nilai", simpan semua akhiran yang mungkin: "nilai", "alue", "lue," "ue" dan "e." Dengan berbuat demikian, anda menghapuskan kad bebas utama dan membenarkan pangkalan data menggunakan indeks untuk carian yang lebih pantas.
Pertimbangan Penyimpanan
Kos untuk menyimpan semua akhiran meningkat secara kuadratik dengan panjang tali. Sebagai contoh, perkataan 5 huruf memerlukan 2.5 kali lebih banyak ruang storan berbanding dengan menyimpan rentetan asal. Oleh itu, adalah penting untuk menentukan sama ada overhed storan ini boleh diterima memandangkan kekangan pangkalan data anda.
Pertimbangan untuk Pemisahan Perkataan
Untuk frasa berbilang perkataan, tentukan cara membahagikan perkataan adalah penting. Sebagai contoh, patutkah anda menyimpan "lima huruf" sebagai satu atau dua perkataan? Memecahkan perkataan mungkin mengehadkan fleksibiliti carian, tetapi mengekalkannya sebagai satu unit meningkatkan keperluan storan. Cari baki yang sesuai dengan corak carian anda.
Petua Tambahan
Pertimbangkan untuk menggunakan indeks kedua pada lajur akhiran untuk carian yang lebih pantas. Indeks hanya lajur yang diperlukan untuk meminimumkan lebihan. Jika boleh, hadkan bilangan baris yang dijana oleh pertanyaan ini untuk mengelakkan kesesakan prestasi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengoptimumkan Carian MySQL Menggunakan 'Suka' dengan Kad Liar Utama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!