Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Melakukan Carian Teks Penuh Sensitif Aksen dalam MySQL?
Menggunakan Pengumpulan untuk Carian Sensitif Aksen dalam MySQL
Apabila menjalankan carian teks penuh dalam MySQL, mungkin perlu mempertimbangkan aksen aksara sensitiviti. Dalam situasi ini, anda mungkin menghadapi cabaran apabila cuba membezakan antara perkataan beraksen dan tanpa aksen, seperti yang ditunjukkan oleh contoh yang diberikan dalam soalan.
Untuk menangani isu ini dan memastikan carian sensitif loghat, anda perlu dua pilihan:
Isytiharkan Sensitif Aksen Pengumpulan:
Ubah suai himpunan medan berkenaan untuk menggunakan pengumpulan binari, seperti utf8_bin. Ini akan membandingkan bait yang dikodkan UTF-8 sebagai data mentah, menghasilkan sensitiviti aksen.
ALTER TABLE words ALTER COLUMN word VARCHAR(10) COLLATE utf8_bin;
Gunakan Klausa Susun dalam Pertanyaan:
Jika carian anda biasanya tidak sensitif aksen tetapi anda memerlukan pengecualian untuk pertanyaan tertentu, anda boleh menambah COLLATE klausa kepada medan bermasalah dalam pertanyaan anda:
SELECT * FROM `words` WHERE `word` = 'abád' COLLATE utf8_bin;
Pertimbangan Tambahan untuk MySQL 8.0 dan Versi Masa Depan:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melakukan Carian Teks Penuh Sensitif Aksen dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!