MySql模糊查詢中特殊字符處理


  近日在使用mysql的like查詢用戶時,當用戶姓名中含有" ' ","%","_",,"\"等特殊符號時,按以往的查詢方式,並不能得出想要的結果。

    查閱資料得知:在遇到這些特殊字符時,需要對字符進行轉義。

 

  • ':用於包裹搜索條件,需轉為\';
  • %:用於代替任意數目的任意字符,需轉換為\%;
  • _:用於代替一個任意字符,需轉換為\_;
  • \:轉義符號,需轉換為\\\\。

 

以下是一些匹配的舉例。

1,搜索a'b...

SELECT * FROM user WHERE name LIKE 'a\'b%'

2,搜索a%b...

SELECT * FROM user WHERE name LIKE 'a\%b%';

3,搜索a_b...  

SELECT * FROM user WHERE name LIKE 'a\_b%';

4,搜索a\b...

SELECT * FROM user WHERE name LIKE  'a\\\\b%';

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM