SQL 通配符
更新时间:2021-11-29 21:21SQL 通配符用于搜索表中的数据。在 SQL 中,通配符可用于替代字符串中的任何其他字符,通配符与 SQL LIKE 操作符一起使用。
在 SQL 中,可使用以下通配符:
通配符 | 描述 |
---|---|
% | 替代 0 个或多个字符 |
_ | 替代一个字符 |
[charlist] | 字符列中的任何单一字符 |
[^charlist] 或 [!charlist] | 不在字符列中的任何单一字符 |
演示数据库
下面是选自 "lqwvje" 表的数据:
id | name | url | sort | country |
---|---|---|---|---|
1 | 罗分明博客 | http://www.luofenming.com | 9 | 中国 |
2 | 淘宝 | https://www.taobao.com | 5 | 中国 |
3 | https://www.google.cm/ | 11 | 美国 | |
4 | 95网络 | http://www.995w.com | 3 | 中国 |
5 | https://www.facebook.com | 8 | 美国 |
SQL % 通配符
下面的 SQL 语句选取 name 以 "罗分明" 开始的所有数据:
SELECT * FROM lqwvje WHERE name LIKE '罗分明%';
相关 %通配符可以查看上一节 SQL LIKE 操作符
SQL _ 通配符
下面的 SQL 语句选取 name 以一个任意字符开始,然后是 "_分明博客" 的数据:
SELECT * FROM lqwvje WHERE name LIKE '_分明博客';
执行输出结果
下面的 SQL 语句选取 name 以 "G" 开始,然后是一个任意字符,然后是 "o",然后是一个任意字符,然后是 "le" 的所有数据:
SELECT * FROM lqwvje WHERE name LIKE 'g_o_le';
执行输出结果
SQL [charlist] 通配符
下面的 SQL 语句选取 name 以 "g"、"罗" 或 "9" 开始的所有数据:
SELECT * FROM lqwvje WHERE name REGEXP '^[g罗9]';
执行输出结果
下面的 SQL 语句选取 name 以 A 到 H 字母开头的所有数据:
SELECT * FROM lqwvje WHERE name REGEXP '^[A-H]';
执行输出结果(注意,A-H 不包含小写g)
下面的 SQL 语句选取 name 不以 A 到 H 字母开头的所有数据:
SELECT * FROM lqwvje WHERE name REGEXP '^[^A-H]';