加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql通配符escape使用_详解MySQL like如何查询包含'%'的字

发布时间:2022-11-06 15:02:29 所属栏目:MySql教程 来源:互联网
导读: 在SQl like语句中,比如
SELECT * FROM user WHERE username LIKE '%luchi%'
SELECT * FROM user WHERE username LIKE '_luchi_',
% 作为通配符通配多个
_ 作为通配符通配

在SQl like语句中,比如

SELECT * FROM user WHERE username LIKE '%luchi%'

SELECT * FROM user WHERE username LIKE '_luchi_',

% 作为通配符通配多个

_ 作为通配符通配一个

但当like 所要查询的字段中含有 % ,我们如何去查:

这个时候就需要指明 字段中的那个'%‘ 不作为通配符;

这里就需要用到 ESCAPE 转义

测试:

这里我们使用这张表

f9303d686b41029aa6f649b7108de6f1.png

转义前:

SELECT * FROM user WHERE username LIKE '%%%';

1ddab3177420331590c92c14f76fa6b8.png

这里会发现三个%号都被当做通配符了;

转义后:

SELECT * FROM user WHERE username LIKE '%1%%' ESCAPE '1';

64a7000cf085442f2fbf9158d34a2480.png

查询成功

注:

ESCAPE 后面跟着一个字符,里面写着什么,什么就是转义符;

然后就像 C语言中转义字符一样 例如 ‘\n','\t', 把这个字符写在你需要转义的那个%号前就可以了;

技巧与建议:

MySQL的通配符很有用。但这种功能是有代价的:通配符搜索的处理一般要比前面讨论的其他搜索所花时间更长。这里给出一些使用通配符要记住的技巧。

不要过度使用通配符。如果其他操作符能达到相同的目的mysql通配符使用,应该 使用其他操作符。

在确实需要使用通配符时,除非绝对有必要,否则不要把它们用 在搜索模式的开始处。把通配符置于搜索模式的开始处,搜索起 来是最慢的。

仔细注意通配符的位置。如果放错地方,可能不会返回想要的数.

到此这篇关于详解MySQL like如何查询包含'%'的字段(ESCAPE用法)的文章就介绍到这了,更多相关MySQL like查询%内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!