SQL中可以使用通配符来搜索数据库中的数据,通配符可用于替代字符串中的任意字符。
通配符介绍
通配符可以配合LIKE操作符一起使用,通配符包括:
- %:替代 0 个或多个字符。
- _:替代一个字符。
- [charlist]:字符列中的任何单一字符。
- [^charlist] 或 [!charlist]:不在字符列中的任何单一字符。
%的使用
- 从Student表中选取出name字段以字母A开头的数据:
SELECT * FROM Student WHERE name LIKE 'A%';
- 从Student表中选取出name字段包含字母A的数据:
SELECT * FROM Student WHERE name LIKE '%A%';
- 从Student表中选取出name字段以字母A结尾的数据:
SELECT * FROM Student WHERE name LIKE '%A';
_的使用
从Student表中选取name字段值以an结尾的数据:
SELECT * FROM Student WHERE name LIKE '_an';
[charlist]的使用
SQL中通配符可以和LIKE操作符一起使用,但是MySQL、SQLite只支持%和_通配符,会把像like '[xxx]%'中的中括号当成普通字符,而不是通配符。
从Student表中选取name字段以C、T、M开头的记录:
SELECT * FROM Student WHERE name REGEXP '^[CTM]';
从Student表中选取name字段不以A、B开头的记录:
SELECT * FROM Student WHERE name REGEXP '^[^AB]';
参考:https://www.9xkd.com