mysql 联合模糊查询问题?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 联合模糊查询问题?相关的知识,希望对你有一定的参考价值。

假如一个order表 关联两张表 user表和 goods表 关联字段为uid和gid 我要输入汉字(比如uid输入“程” gid输入“果”) 怎么进行联合模糊查询 得到相应的order表相应数据?

select * from Order a
left join User b on a.uid=b.uid
left join Goods c on a.gid=c.gid
where a.uid like\'%程%\' and a.uid like\'%果%\'
这样子行吗
参考技术A 不是很懂你的意思 是这样吗?

select *
from order
LEFT join user u, goods g
ON o.uid like '%'+g.uid +'%' and o.gid like '%'+g.gid+'%'

MYSQL无法使用索引的场景

设计优化无法使用索引的场景

通过索引扫描的记录数超过30%,变成全表扫描

联合索引中,第一个索引列使用范围查询--只能用到部分索引

联合索引中,第一个查询条件不是最左索引列

模糊查询条件列最左以通配符% 开始

内存表(HEAP 表)使用HASH索引时,使用范围检索或者ORDER BY

两个独立索引,其中一个用于检索,一个用于排序--只能用到其中一个索引,5.6以上有ICP特性

表关联字段类型不一样(也包括长度不一样)

索引字段条件上使用函数

 

文章来源:刘俊涛的博客

地址:http://www.cnblogs.com/lovebing

以上是关于mysql 联合模糊查询问题?的主要内容,如果未能解决你的问题,请参考以下文章

MySQL联合查询及模糊查询

java mysql模糊查询有问题 请纠错

mysql模糊查询固定某个字符

请教mysql模糊查询两边都用%为啥用不到索引?

MySQL模糊查询

mysql 模糊查询