like的使用
某人叫奥巴马
SELECT * FROM `user` WHERE username like '巴%'
SELECT * FROM `user` WHERE username like '%巴'
无记录
SELECT * FROM `user` WHERE username like '%巴%'
有记录
双百分号匹配所有内容
'巴%'匹配以'巴'开头内容, '%巴'匹配以'巴'结尾内容
效率问题
1)'巴%'会使用索引,'%巴'与'%巴%'是全表扫描
2)当查询的的条件和查询的结果都是索引中的字段的时候,这个索引我们可以称之为覆盖索引,这个时候,使用like '%%'模糊查询索引是有效的
3)使用全文索引,给字段建立Full Text索引,然后使用match(...) against(...)进行检索 FULLTEXT KEY
另外InnoDB 1.2.x版本开始支持全文检索,MyISAM一直支持全文索引