mysql查询包含关键字_MySQL带LIKE关键字的查询

MySQL中,LIKE关键字可以判断两个字符串是否相匹配,语法格式

SELECT * | {字段名1,字段名2,……}

FROM 表名

WHERE 字段名 [NOT] LIKE ‘匹配字符串’;

参数说明

NOT,可选参数,表示查询与指定字符串不匹配的记录

匹配字符串,指定用来匹配的字符串,其值,可以是一个普通字符串,也可以是包含百分号%,和下划线_的通配字符串。

百分号和下划线,统称为通配符

一、百分号%通配符

匹配任意长度的字符串,包括空字符串,比如,字符串“c%”匹配以字符c开始的任意长度的字符串

查询student表中,name字段值以字符s开头的学生id

可以看出,返回的结果中name字段值,都是以字符s开头

edcb03cee96b37320358198c0c926c56.png

百分号通配符,可以出现在通配字符串的任意位置

查询student表中name字段值,以字符w开始,以字符g结束的学生id

可以看出,匹配的有两条记录

在通配字符串中,可以出现多个百分号通配符

查询student表中,name字段值包含字符“y”的学生id

35bb460e75d273dafff1603785e614cc.png

可以看出,通配字符串中字符“y”的前后,各有一个百分号通配符,它匹配包含字符“y”的字符串

LIKE之前,可以使用NOT关键字,用来查询与指定通配字符串,不匹配的记录

07cdc4c7da0edb9d847f115f908bf0f5.png

可以看出,查询的结果正好相反

二、下划线(_)通配符

下划线通配符,与百分号通配符不同

下划线通配符,只匹配单个字符,如果要匹配多个字符,需要使用多个下划线通配符。

比如

字符串“cu_”匹配以字符串“cu”开始,长度为3的字符串

字符串“cu__”匹配以字符串“cu”开始,长度为4的字符串

注意,如果使用多个下划线,匹配多个连续的字符串,下划线之间不能有空格

查询student表中,name字段值以字符串“wu”开始,以字符串“ong”结束,并且,两个字符串之间,只有一个字符的记录

可以看出,一个下划线,匹配了一个字符

cbcac82ae22d497c99b6810d698f27c2.png

修改查询条件,将匹配字符串改为“wu_ng”,再次执行查询语句

可以看出,返回记录为空

查询student表中,name字段值包含7个字符,并且,以字符串“ing”结束的记录

40db4498dce40d3cc147fb21d8103041.png

可以看出,通配符中使用了4个下划线通配符

三、使用百分号和下划线通配符,进行查询操作

百分号和下划线是通配符

如果,要匹配字符串中的百分号和下划线,需要在通配符中,使用右斜线“\”对百分号和下划线,进行转义

“\%”匹配百分号字面值

“_”匹配下划线字面值

查询student表中,name字段值包括“%”的记录

首先,向student表中,插入一条记录

bdb522a3c706125fce0a09f5a3c8446c.png

可以看出,查询出了name字段值为“sun%er”的记录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值