本章讲什么是通配符,如何使用通配符,以及怎样使用like操作符
LIKE操作符:进行模糊查询查询包含了xx的字符的列
百分号%通配符
最常用的通配符就是百分号%,在搜索串中,%表示任何字符出现任意次数。例如找出以java开头的产品
输入:
select bookid,bookname
from bookinfo
where bookname like 'java%';
输出:
+-----------+-------------------+
| bookid | bookname |
+-----------+-------------------+
| 7111-1790 | Java2核心技术 |
+-----------+-------------------+
1 row in set (0.00 sec)
分析:检索任意以java开头的词 %告诉MySql接收java之后任意的词,不管多少
使用多个通配符:
输入:
select bookid,bookname,press
from bookinfo
where press like '%大学%';
输出:
+-----------+-----------------------+-----------------------+
| bookid | bookname | press |
+-----------+-----------------------+-----------------------+
| 7305-0458 | 计算机应用基础 | 南京大学出版社 |
| 7564-1018 | 大学语文教程 | 东南大学出版社 |
| 7800-7336 | 谁动了我的奶酪 | 南京大学出版社 |
| 7800-8287 | 倾城之恋 | 南京大学出版社 |
| 9787-5057 | 盗墓笔记 | 南京大学出版社 |
| 9787-5378 | 韩寒作品集 | 南京大学出版社 |
| 9787-5613 | 沉睡之城111 | 南京大学出版社 |
| 9787-8020 | 爱丽丝漫游奇境 | 南京大学出版社 |
+-----------+-----------------------+-----------------------+
8 rows in set (0.00 sec)
通配符可在搜索模式中任意位置使用,并且使用多个,上面的使用了两个并位于模式的两端
搜索模式%大学%表示匹配任意位置包含文本大学的值,不论他的前后出现了上面字符
搜索a开头b结尾的字符
select bookid,bookname,press
from bookinfo
where press like 'a%b';
下划线_通配符
下划线_用%用途基本一致,但下划线匹配单个字符而不是多个字符
再重申一遍%,%表示任何字符出现任意次数(多个字符)
再复述一遍_,_表示任何字符出现单个(单个字符)