2024年09月15日 SQL语句like详解 极客笔记

在SQL中,LIKE是用来在WHERE子句中搜索指定模式的数据。它类似于正则表达式的匹配,但是比正则表达式更简单直观。LIKE通常与%和_配合使用来表示通配符。
LIKE语句的基本语法如下所示:
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;
其中,column_name为你要搜索的列名,table_name为你要搜索的表名,pattern为你要搜索的模式。
%%通配符用来匹配零个或多个字符。例如,'a%'可以匹配任意以'a'开头的字符串。
示例:
SELECT *
FROM products
WHERE product_name LIKE 'S%';
运行结果:
product_name
-------------
Shirt
Shoes
Shorts
__通配符用来匹配一个任意字符。例如,'_h%'可以匹配任何以任意字符开头,后面跟着'h'的字符串。
示例:
SELECT *
FROM customers
WHERE last_name LIKE '_a%';
运行结果:
first_name | last_name
--------------------------------
Alice | Smith
[][]通配符用来匹配中括号中任意一个字符。例如,'[abc]%'可以匹配任何以'a'、'b'或'c'开头的字符串。
示例:
SELECT *
FROM employees
WHERE department LIKE '[A-F]%';
运行结果:
employee_id | department
--------------------------
1 | Accounting
2 | Finance
3 | Marketing
4 | Human Resources
^^通配符用来排除字符。例如,'[a^b]%'可以匹配任何以除了'b'以外的字符'a'开头的字符串。
示例:
SELECT *
FROM products
WHERE product_name LIKE '[S^W]%';
运行结果:
product_name
-------------
Shoes
Shorts
--通配符用来指定字符范围。例如,'[a-m]%'可以匹配任何以从'a'到'm'之间的字符开头的字符串。
示例:
SELECT *
FROM customers
WHERE last_name LIKE '[A-M]%';
运行结果:
first_name | last_name
--------------------------------
Alice | Smith
通过以上示例,我们可以清晰地看到LIKE语句的强大功能和使用方法。在实际应用中,可以根据具体需求选择不同的通配符来完成对数据的搜索和筛选工作。
本文链接:http://so.lmcjl.com/news/13121/