鍍金池/ 教程/ 數(shù)據(jù)庫/ SQLite Like 子句
SQLite Having 子句
SQLite 運(yùn)算符
SQLite 注入
SQLite Delete 語句
SQLite – Python
SQLite 數(shù)據(jù)類型
SQLite 簡介
SQLite 創(chuàng)建數(shù)據(jù)庫
SQLite Vacuum
SQLite Group By
SQLite 日期 & 時(shí)間
SQLite AND/OR 運(yùn)算符
SQLite 刪除表
SQLite Distinct
SQLite Alter 命令
SQLite PRAGMA
SQLite 約束
SQLite 創(chuàng)建表
SQLite Like 子句
SQLite Limit 子句
SQLite Autoincrement
SQLite 子查詢
SQLite – C/C++
SQLite – PHP
SQLite 命令
SQLite Order By
SQLite Select 語句
SQLite Unions 子句
SQLite – Perl
SQLite – Java
SQLite 別名
SQLite 常用函數(shù)
SQLite Explain(解釋)
SQLite NULL 值
SQLite Glob 子句
SQLite 表達(dá)式
SQLite 視圖
SQLite Where 子句
SQLite Truncate Table
SQLite 索引
SQLite Insert 語句
SQLite 安裝
SQLite Indexed By
SQLite 分離數(shù)據(jù)庫
SQLite 觸發(fā)器
SQLite 語法
SQLite Joins
SQLite Update 語句
SQLite 附加數(shù)據(jù)庫
SQLite 事務(wù)

SQLite Like 子句

SQLite 的 LIKE 運(yùn)算符是用來匹配通配符指定模式的文本值。如果搜索表達(dá)式與模式表達(dá)式匹配,LIKE 運(yùn)算符將返回真(true),也就是 1。這里有兩個(gè)通配符與 LIKE 運(yùn)算符一起使用:

  • 百分號 (%)
  • 下劃線 (_)

百分號(%)代表零個(gè)、一個(gè)或多個(gè)數(shù)字或字符。下劃線(_)代表一個(gè)單一的數(shù)字或字符。這些符號可以被組合使用。

語法

% 和 _ 的基本語法如下:

    SELECT FROM table_name
    WHERE column LIKE 'XXXX%'

    or

    SELECT FROM table_name
    WHERE column LIKE '%XXXX%'

    or

    SELECT FROM table_name
    WHERE column LIKE 'XXXX_'

    or

    SELECT FROM table_name
    WHERE column LIKE '_XXXX'

    or

    SELECT FROM table_name
    WHERE column LIKE '_XXXX_'

您可以使用 AND 或 OR 運(yùn)算符來結(jié)合 N 個(gè)數(shù)量的條件。在這里,XXXX 可以是任何數(shù)字或字符串值。

實(shí)例

下面一些實(shí)例演示了 帶有 '%' 和 '_' 運(yùn)算符的 LIKE 子句不同的地方:

語句描述
WHERE SALARY LIKE '200%'查找以 200 開頭的任意值
WHERE SALARY LIKE '%200%'查找任意位置包含 200 的任意值
WHERE SALARY LIKE '00%'查找第二位和第三位為 00 的任意值
WHERE SALARY LIKE '2%_%'查找以 2 開頭,且長度至少為 3 個(gè)字符的任意值
WHERE SALARY LIKE '%2'查找以 2 結(jié)尾的任意值
WHERE SALARY LIKE '_2%3'查找第二位為 2,且以 3 結(jié)尾的任意值
WHERE SALARY LIKE '2___3'查找長度為 5 位數(shù),且以 2 開頭以 3 結(jié)尾的任意值

讓我們舉一個(gè)實(shí)際的例子,假設(shè) COMPANY 表有以下記錄:

    ID          NAME        AGE         ADDRESS     SALARY
    ----------  ----------  ----------  ----------  ----------
    1           Paul        32          California  20000.0
    2           Allen       25          Texas       15000.0
    3           Teddy       23          Norway      20000.0
    4           Mark        25          Rich-Mond   65000.0
    5           David       27          Texas       85000.0
    6           Kim         22          South-Hall  45000.0
    7           James       24          Houston     10000.0

下面是一個(gè)實(shí)例,它顯示 COMPANY 表中 AGE 以 2 開頭的所有記錄:

    sqlite> SELECT * FROM COMPANY WHERE AGE  LIKE '2%';

這將產(chǎn)生以下結(jié)果:

    ID          NAME        AGE         ADDRESS     SALARY
    ----------  ----------  ----------  ----------  ----------
    2           Allen       25          Texas       15000.0
    3           Teddy       23          Norway      20000.0
    4           Mark        25          Rich-Mond   65000.0
    5           David       27          Texas       85000.0
    6           Kim         22          South-Hall  45000.0
    7           James       24          Houston     10000.0

下面是一個(gè)實(shí)例,它顯示 COMPANY 表中 ADDRESS 文本里包含一個(gè)連字符(-)的所有記錄:

    sqlite> SELECT * FROM COMPANY WHERE ADDRESS  LIKE '%-%';

這將產(chǎn)生以下結(jié)果:

    ID          NAME        AGE         ADDRESS     SALARY
    ----------  ----------  ----------  ----------  ----------
    4           Mark        25          Rich-Mond   65000.0
    6           Kim         22          South-Hall  45000.0