版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
在SQl like语句中,比如
SELECT * FROM user WHERE username LIKE '%luchi%'
SELECT * FROM user WHERE username LIKE '_luchi_',
- % 作为通配符通配多个
- _ 作为通配符通配一个
但当like 所要查询的字段中含有 % ,我们如何去查:
这个时候就需要指明 字段中的那个’%‘ 不作为通配符;
这里就需要用到 ESCAPE 转义
测试:
- 这里我们使用这张表
- 转义前:
SELECT * FROM user WHERE username LIKE '%%%';
这里会发现三个%号都被当做通配符了; - 转义后:
SELECT * FROM user WHERE username LIKE '%1%%' ESCAPE '1';
查询成功
注:- ESCAPE 后面跟着一个字符,里面写着什么,什么就是转义符;
- 然后就像 C语言中转义字符一样 例如 ‘\n’,’\t’, 把这个字符写在你需要转义的那个%号前就可以了;