SQLite 的 LIKE 运算符是用来匹配通配符指定模式的文本值。如果搜索表达式与模式表达式匹配,LIKE 运算符将返回真(true),也就是 1。这里有两个通配符与 LIKE 运算符一起使用:
百分号 (%)
下划线 (_)
百分号(%)代表零个、一个或多个数字或字符。下划线(_)代表一个单一的数字或字符。这些符号可以被组合使用。
% 和 _ 的基本语法如下:
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 运算符来结合 N 个数量的条件。在这里,XXXX 可以是任何数字或字符串值。
下面一些实例演示了 带有 "%" 和 "_" 运算符的 LIKE 子句不同的地方:
语句 | 描述 |
---|---|
WHERE SALARY LIKE "200%" | 查找以 200 开头的任意值 |
WHERE SALARY LIKE "%200%" | 查找任意位置包含 200 的任意值 |
WHERE SALARY LIKE "_00%" | 查找第二位和第三位为 00 的任意值 |
WHERE SALARY LIKE "2_%_%" | 查找以 2 开头,且长度至少为 3 个字符的任意值 |
WHERE SALARY LIKE "%2" | 查找以 2 结尾的任意值 |
WHERE SALARY LIKE "_2%3" | 查找第二位为 2,且以 3 结尾的任意值 |
WHERE SALARY LIKE "2___3" | 查找长度为 5 位数,且以 2 开头以 3 结尾的任意值 |
让我们举一个实际的例子,假设 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
下面是一个实例,它显示 COMPANY 表中 AGE 以 2 开头的所有记录:
sqlite> SELECT * FROM COMPANY WHERE AGE LIKE "2%";
这将产生以下结果:
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
下面是一个实例,它显示 COMPANY 表中 ADDRESS 文本里包含一个连字符(-)的所有记录:
sqlite> SELECT * FROM COMPANY WHERE ADDRESS LIKE "%-%";
这将产生以下结果:
ID NAME AGE ADDRESS SALARY
---------- ---------- ---------- ---------- ----------
4 Mark 25 Rich-Mond 65000.0
6 Kim 22 South-Hall 45000.0
WHERE子句过滤各种语句,如SELECT,UPDATE,DELETE和INSERT。 他们提出了用于指定行动的标准。 它们通常出现在语句中的...
良好的字段定义对于优化数据库至关重要。 理想的方法要求您专门使用所需类型和大小的字段。 例如,如果你只使用一个字段,五个字...
ALTER命令提供了一种方法来更改现有表的结构,这意味着删除或添加列,修改索引,更改数据类型或更改名称等修改。 ALTER还会在元...
MariaDB是MySQL关系数据库管理系统的一个分支。 MySQL的原始开发人员在Oracle收购MySQL后提出的关注之后创建了MariaDB。 本教程...
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)一个列表最多可以包...
Redis 服务器命令主要是用于管理 redis 服务。 实例 以下实例演示了如何获取 redis 服务器的统计信息: redis 127.0.0.1:6379 IN...
分布式锁一般有数据库乐观锁、基于Redis的分布式锁以及基于ZooKeeper的分布式锁三种实现方式,而本文将为大家带来的就是第二种基...
使用phpinfo()打印出 php 信息,有几点需要注意,需要通过这几个地方确定我们要下载的dll文件需要下载 php_redis(主要) 和...
oid2name— 解析一个PostgreSQL数据目录中的 OID 和文件结点。vacuumlo— 从PostgreSQL数据库中移除孤立的大对象这一节覆盖了con...