MySQL使用通配符进行数据搜索以及过滤

目录

1.什么是通配符?

2.通配符之→百分号(%)

3.通配符之→下划线(_)

4.通配符使用注意事项


*本文涉及概念来源于图灵程序设计丛书,数据库系列——《MySQL必知必会》

1.什么是通配符?

通配符(wildcard) :用来匹配值的一部分的特殊字符。简单来说,就是在进行数据库查找时,并不总是明确知道要查找的数据的具体值。如下面场景(题目来源于牛客网),需要读取university一列中带有“北京”字的信息。

为了在搜索语句中使用通配符,需要用到LIKE操作符,作用是指示MySQL利用通配符进行匹配,而不是直接相等匹配(WHERE university = '北京大学'就是直接进行相等匹配)。

2.通配符之→百分号(%)

直接用上面提到的搜索学校中带有“北京”二字的用户信息的例子。

SELECT *
FROM user_profile
WHERE university LIKE '%北京%';

结果会输出所有学校为“北京大学、北京师范大学”(带有北京二字)的用户信息。

3.通配符之→下划线(_)

下划线的用途跟%一样,区别是下划线只能匹配单个字符,百分号可以匹配0、1或多个字符。

下图可以发现,下划线无法匹配到(.5 ton anvil)这一行

4.通配符使用注意事项

①如果其他操作符(如AND、OR、IN、NOT)等可以达到检索目的,不要使用通配符,会加大搜索时间。

②确实需要使用通配符时,尽量不要用在搜索模式的开始,这样是最慢的(容易理解,用在最开始相当于在整个表中用通配符进行匹配)。

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值