第一:like
like作为常用的,就不多说了,就简单说下需要注意的;
使用的时候注意前后的 %号的使用,尽量少用前面的%,因为会很卡,同时注意索引,因为用不好会更卡。
第二:REGEXP
sql可以正则查询,用这个可以解决一些比较棘手的查询;例如
店铺表 shop
id | remark |
1 | 柚子;苹果; |
2 | 香蕉;橘子; |
3 | 桃花; |
4 | 榴莲; |
想要筛选出有 苹果和桃花的店铺,如果用like,就不太好处理,用REGEXP,就简单不少;
select * from shop where remark REGEXP '苹果;|桃花;'
这里主要用来处理些许较为麻烦的问题,有一点需要注意,就是要尽量保证数据库里面被筛选字段的唯一性,有时需要做一些转化;尤其是涉及到存储的数据是大量的数字的时候,更需要确保筛选数据之间的唯一性,否则,会将本不该出现的数据给筛选出来;