SQLite LIKE
运算符用于使用通配符将文本值与模式进行匹配。 在搜索表达式与模式表达式匹配的情况下,LIKE
运算符将返回真,即: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
的表,并具有以下数据:
sqlite> SELECT * FROM STUDENT ;
1|Maxsu|27|Shengzheng|20000.0
2|Minsu|25|Beijing|15000.0
3|Avgsu|23|Shanghai|2000.0
4|Linsu|25|Guangzhou|65000.0
5|Sqlsu|26|Hainan|25000.0
6|Javasu|21|Shengzheng|18000.0
sqlite>
在这些示例中,在WHERE语句的LIKE子句中,在’FEES
‘字段上使用’%
‘和’_
‘运算符,对应结果如下:
语句 | 结果说明 |
---|---|
Where FEES like '200%' |
查找以200 开头的任何值 |
Where FEES like '%200%' |
查找包含200 开头的任何值 |
Where FEES like '_00%' |
查找第二个位置和第三个位置是0 的任何值 |
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
表中查询age
以5
结尾的所有记录。
SELECT * FROM STUDENT WHERE AGE LIKE '%5';
执行上面语句,得到以下结果 -
示例2:
从STUDENT
表中查询地址值具有“an
”字符的所有记录:
SELECT * FROM STUDENT WHERE ADDRESS LIKE '%an%';
执行上面语句,得到以下结果 -
易百教程移动端:请扫描本页面底部(右侧)二维码并关注微信公众号,回复:"教程" 选择相关教程阅读或直接访问:http://m.yiibai.com 。
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加3个群。
- Java技术群: 227270512 (人数:2000,等级:LV5,免费:否)
- MySQL/SQL群: 418407075 (人数:2000,等级:LV5,免费:否)
- 大数据开发群: 655154550 (人数:2000,等级:LV5,免费:否)
- Python技术群: 287904175 (人数:2000,等级:LV5,免费:否)
- 人工智能深度学习: 456236082 (人数:2000,等级:LV5,免费:否)
- 测试工程师(新群): 415553199 (人数:1000,等级:LV1,免费:是)
- 前端技术群(新群): 410430016 (人数:1000,等级:LV1,免费:是)
- C/C++技术(新群): 629264796 (人数:1000,等级:LV1,免费:是)
- Node.js技术(新群): 621549808 (人数:1000,等级:LV1,免费:是)
- PostgreSQL数据库(新群): 539504187 (人数:1000,等级:LV1,免费:否)
- Linux技术: 479429477 (人数:2000,等级:LV5,免费:否)
- PHP开发者: 460153241 (人数:2000,等级:LV5,免费:是)
- Oracle数据库: 175248146 (人数:2000,等级:LV5,免费:是)
- C#/ASP.Net开发者: 579821706 (人数:2000,等级:LV5,免费:是)
- 数据分析师: 397883996 (人数:1000,等级:LV1,免费:是)R语言,Matlab语言等技术