SQLite LIKE
SQLite LIKE运算符用于使用通配符将文本值与模式匹配。如果搜索表达式与模式表达式匹配,则LIKE运算符将返回true,即为1。
LIKE运算符与两个通配符一起使用:
百分号(%)
下划线(_)
百分号表示零个,一个或多个数字或字符。下划线表示单个数字或字符。
语法:
SELECT FROM table_name
WHERE column LIKE 'XXXX%'
或
SELECT FROM table_name
WHERE column LIKE '%XXXX%'
或
SELECT FROM table_name
WHERE column LIKE 'XXXX_'
或
SELECT FROM table_name
WHERE column LIKE '_XXXX'
或
SELECT FROM table_name
WHERE column LIKE '_XXXX_'
在这里,XXXX可以是任何数字或字符串值。
示例:
我们有一个名为" STUDENT"的表,其中包含以下数据:
在这些示例中,WHERE语句的LIKE子句与'%'不同和'_'运算符,并在'FEES'上完成操作:
声明 |
说明 |
Where FEES like '200%' |
它将找到任何以200开头的值。 |
Where FEES like '%200%' |
它将找到在任何位置具有200的任何值。 |
Where FEES like '_00%' |
它将找到第二和第三位置具有00的任何值。 |
Where FEES like '2_%_%' |
它将找到任何以2开头且长度至少为3个字符的值。 |
Where FEES like '%2' |
它将找到任何以2结尾的值 |
Where FEES like '_2%3' |
它将找到第二个位置带有2并以3结尾的任何值 |
Where FEES like '2___3' |
它将找到以2开头和3结束的五位数数字中的任何值 |
示例1: : 从STUDENT表中选择所有年龄从2开始的记录。
SELECT * FROM STUDENT WHERE AGE LIKE '2%';
输出:
示例2:
从STUDENT表中选择所有记录,其中文本内将带有" a"(a):
SELECT * FROM STUDENT WHERE ADDRESS LIKE '%a%';
输出: