发布网友 发布时间:2022-04-22 22:55
共2个回答
热心网友 时间:2022-04-30 12:26
SELECT * FROM database WHERE email LIKE "%abc%" or pass like "%abc%" or user like "%abc%";
你的这条sql有索引也是等于没有的,因为你用了like '%xxx%' 如果like 的条件以%开始,数据库不会用索引。
分表是可以,但是需要分很多。你要一个表分几十个表才能优化到合理的速度。
但是从你表的数据量来说,你应该不需要用得全表扫面,应该是根据用户来查找。所以建议你加多一个userid =? 的来找,然后用userid作为你的索引。
热心网友 时间:2022-04-30 13:44
分表 建索引都解决不了的。 我做个一个700万级数据的搜索。是用sphinx解决的。国内有一个做的 中文版的sphinx 叫coreseek。 相信我,肯定可以解决你的性能问题的。追问能帮我搞定我的吗?有偿的 可以的话 加我 61551059