SQLite Like 子句


SQLite中,LIKE子句用于匹配用字符串表示的数据。LIKE子句可以用来模糊匹配字符串中的某些内容,这在搜索和过滤数据中非常有用。本文将从语法、通配符、示例等方面详细介绍SQLite LIKE子句。

LIKE子句的语法

LIKE子句的语法格式如下所示:

SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;

其中,column_name是要搜索的列名,table_name是要搜索的表名,pattern是要匹配的字符串模式。

SQLite LIKE子句通配符

SQLite LIKE子句中有两种通配符可以使用:百分号(%)和下划线(_)。

  • 百分号(%)表示匹配任意长度的字符,包括0个字符。
  • 下划线(_)表示匹配一个单一的字符。

下面是一些示例:

  • %apple%:表示匹配包含“apple”的字符串,前后可以有任意多的字符。
  • apple%:表示匹配以“apple”开头的字符串。
  • %apple:表示匹配以“apple”结尾的字符串。
  • _pple:表示匹配一个字符加上“pple”,例如“apple”或“spple”。
  • a%o:表示匹配以“a”开头和“o”结尾的任意字符串,例如“apologize”或“auto”。

需要注意的是,LIKE子句匹配时不区分大小写。

SQLite LIKE子句的示例

假设有如下一张名为“employees”的表:

id name job_title
1 John Doe Manager
2 Jane Smith Secretary
3 Bob Johnson Engineer
4 Jill Brown Programmer

现在我们想要查找所有名字中包含“Jo”的员工,可以使用以下语句:

SELECT * FROM employees
WHERE name LIKE '%Jo%';

这将返回以下结果:

id name job_title
1 John Doe Manager
3 Bob Johnson Engineer

如果我们想要查找所有职称中以“er”结尾的员工,可以使用以下语句:

SELECT * FROM employees
WHERE job_title LIKE '%er';

这将返回以下结果:

id name job_title
2 Jane Smith Secretary
3 Bob Johnson Engineer

总结一下,SQLite LIKE子句是用于模糊匹配字符串的一个非常有用的工具。借助通配符,我们可以使用LIKE子句匹配任意长度和任意字符组合的字符串。在查询数据和搜索数据时,LIKE子句是一个非常有用的工具。