《MySQL必知必会》-第8章 使用通配符进行过滤

使用通配符以及like操作符进行通配搜索,对数据进行复杂过滤

like操作符

  • %通配符
# %表示任意字符出现的任意次数
# 1
select prod_id,prod_name
from products
where prod_name like 'jet%';
# 根据MySQL的配置方式,搜索可以区分大小写
# 2
select prod_id,prod_name
from products
where prod_name like '%anvil%';
# 3
select prod_id,prod_name
from products
where prod_name like 's%s';
# 注意尾空格
# 若‘anvil’后有一个或多个空格,则‘%anvil’不会进行匹配
# 注意null,%不能匹配null
# 例如:where prod_name like '%'不能匹配用null做产品名的行
  • _通配符
# _匹配单个字符
# 1
select prod_id,prod_name
from products
where prod_name like '_ ton anvil';
# 与%对比:%匹配任意字符出现的任意次数
select prod_id,prod_name
from products
where prod_name like '% ton anvil';
  1. 不要过度使用通配符。如果其他操作符能达到相同目的,尽量使用其他操作符
  2. 确实需要通配符时,除非绝对有必要,不要将通配符放在搜索模式的开始处,因为这样是最慢的。
  3. 注意通配符的位置,错误放置可能不会返回想要的数据。
posted @ 2022-03-08 16:08  Mer_curiail  阅读(15)  评论(0)    收藏  举报  来源