Rumah >pangkalan data >tutorial mysql >Bagaimana untuk melarikan diri garis bawah dalam MySQL LIKE Queries?
MySQL LIKE Query dengan Underscore
Dalam SQL, pengendali LIKE boleh digunakan untuk mencari corak dalam rentetan. Walau bagaimanapun, apabila menggunakan LIKE dengan garis bawah (_), pertimbangan khusus mesti diambil.
Isunya
Apabila menggunakan LIKE untuk mencari rentetan yang mengandungi garis bawah, garis bawah dianggap sebagai kad bebas. Ini bermakna pertanyaan berikut:
SELECT id FROM images WHERE img_path LIKE 'abc_%'
akan mengembalikan semua baris dalam jadual 'imej' di mana lajur 'img_path' bermula dengan "abc," termasuk baris dengan garis bawah (cth., "abcde_1.jpg" ).
Penyelesaian
Untuk melarikan diri watak khas dan pastikan pengendali LIKE hanya sepadan dengan rentetan bermula dengan "abc_," adalah perlu untuk melepaskan garis bawah dengan garisan ke belakang (). Pertanyaan yang betul ialah:
SELECT id FROM images WHERE img_path LIKE 'abc\_%'
Penjelasan
Dengan melepaskan garis bawah, pengendali LIKE menganggapnya sebagai aksara literal. Ini memerlukan lajur 'img_path' untuk bermula dengan "abc_" untuk dipadankan. Akibatnya, hanya baris 1 dan 2 dikembalikan.
Atas ialah kandungan terperinci Bagaimana untuk melarikan diri garis bawah dalam MySQL LIKE Queries?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!