Pengoptimuman Operator SEPERTI MySQL
Soalan: Bolehkah prestasi pengendali MySQL LIKE dipertingkatkan apabila menggunakan kad bebas (cth., '%test% ')?
Jawapan: Ya, MySQL boleh mengoptimumkan prestasi operator LIKE apabila menggunakan corak tertentu dalam pertanyaan anda.
-
Kad Liar Awalan: Jika pertanyaan anda menyerupai foo LIKE 'abc%' atau foo LIKE 'abc�f%', MySQL boleh memanfaatkan indeks. Ia boleh menggunakan indeks untuk mana-mana bahagian rentetan sebelum kad bebas pertama.
-
Pencarian Teks Penuh untuk Mana-mana Padanan: Jika anda perlu mencari perkataan di mana-mana dalam rentetan, pertimbangkan untuk menggunakan indeks FULLTEXT sebaliknya. Pengindeksan FULLTEXT direka khusus untuk pemadanan perkataan yang cekap dan boleh mengatasi prestasi LIKE dengan kad bebas dalam senario sedemikian.
Maklumat Tambahan:
- Indeks MySQL: http://dev.mysql.com/doc/refman/5.1/en/mysql-indexes.html
- Cari TEKS PENUH: http://dev.mysql.com/doc/refman/5.0/en/ fulltext-search.html
Atas ialah kandungan terperinci Bagaimanakah saya boleh meningkatkan prestasi pengendali MySQL LIKE dengan kad bebas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!