MySQL like 子句

WHERE子句中可以使用等號 =來設定獲取數(shù)據(jù)的條件,如 t.url = 'https://www.taobao.com'。
但是有時候我們需要獲取url 字段含有"com"字符的所有記錄,這時我們就需要在 WHERE 子句中使用 SQLLIKE 子句。

SQL LIKE 子句中使用百分號%字符來表示任意字符,類似于UNIX或正則表達式中的星號 *。

如果沒有使用百分號 %, LIKE 子句與等號 = 的效果是一樣的。

-> SELECT t.field1, t.field2,...t.fieldN 
-> FROM table_name t
-> WHERE t.field1 LIKE condition1 [AND [OR]] t.filed2 = 'somevalue'
  1. 你可以在 WHERE子句中指定任何條件。
  2. 你可以在 WHERE子句中使用LIKE子句。
  3. 你可以使用LIKE子句代替等號=。
  4. LIKE 通常與 %一同使用,類似于一個元字符的搜索。
  5. 你可以使用 AND 或者 OR 指定一個或多個條件。
  6. 你可以在 DELETEUPDATE 命令中使用WHERE...LIKE子句來指定條件。

WHERE LIKE的條件查詢中,SQL 提供了四種匹配方式。

  • %:表示任意 0 個或多個字符??善ヅ淙我忸愋秃烷L度的字符,有些情況下若是中文,請使用兩個百分號(%%)表示。
  • _:表示任意單個字符。匹配單個任意字符,它常用來限制表達式的字符長度語句。
  • []:表示括號內(nèi)所列字符中的一個(類似正則表達式)。指定一個字符、字符串或范圍,要求所匹配對象為它們中的任一個。
  • [^]:表示不在括號所列之內(nèi)的單個字符。其取值和[] 相同,但它要求所匹配對象為指定字符以外的任一個字符。
  • 查詢內(nèi)容包含通配符時,由于通配符的緣故,導致我們查詢特殊字符 %、_、[的語句無法正常實現(xiàn),而把特殊字符用“[ ]” 括起便可正常查詢。

LIKE 匹配/模糊匹配,會與 %_ 結合使用。

'%a'     //以a結尾的數(shù)據(jù)
'a%'     //以a開頭的數(shù)據(jù)
'%a%'    //含有a的數(shù)據(jù)
'_a_'    //三位且中間字母是a的
'_a'     //兩位且結尾字母是a的
'a_'     //兩位且開頭字母是a的
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容