本文主要介绍MySQL中的
like
子句的作用和用法。
I、与=
的关系
我们会经常使用形如SELECT * FROM table WHERE column = 'happy'
的语句对table进行查询,这里要求类中的内容必须是happy
,而如果使用like
语句也能达到同样的效果:
SELECT * FROM table WHERE column LIKE 'happy'
。
II、模糊查询
like
子句的特性在于能采用通配符的方式提供模糊查询*。
like
子句中的通配符包含:%
,_
,escape
:
1、%
表示任意个或多个字符。可匹配任意类型和长度的字符:
SELECT * FROM user WHERE username LIKE '%Kevin';
应用:如果需要匹配既有happy又有love的列:
SELECT * FROM user WHERE username LIKE '%happy%' AND '%love%';
或者
SELECT * FROM user WHERE username LIKE '%happy%love%';
2、_
表示任意单个字符,用法与%
类似;
3、escape
可以将转义字符(/
)后面的%
或_
以普通字符的身份加入匹配条件:
SELECT * FROM user WHERE username LIKE '%happy/%%';
上述语句的作用是匹配包含'happy%'的user。
III、正则模式
关于MySQL 的模糊查询,可以进一步使用正则模式完成,这里就不描述了。
网友评论