大数据量的查询速度优化问题?

踩西瓜皮上线 2008-11-24 09:52:15
类似于企业黄页,就是 根据用户在查询框输入的 关键词,从数据库检索出符合 能匹配关键词的企业数据,当然,那个数据表 现在是1000万的数据量,目前sql语句是用like %关键词% 模式写出来的,查询速度不可忍受,发贴看大家有好的解决方法没有?
例如 用户在页面中输入“酒店”,后台有个“company”表(1000万记录)里面有“云南酒店”、“漓江酒店”等等企业名称,就检出来,显示在页面上!

大家有人整过没有?
...全文
86 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jiangyaning 2009-06-10
用in不知道如何
回复
hzcenter 2008-11-26
like 是不推荐的。特别是数据量大的时候。要奔溃的
回复
liguang0717 2008-11-25
开头和结尾都是 % ,对不起,很难优化'
回复
liguang0717 2008-11-25
还有一个 就是你可以 禁止用户搜索 酒店这样的关键字 因为你里面几乎都是含有 "酒店" 字样的公司
回复
原来是有索引的,但是听说 对于 varchar 字段类型 索引的用途也不是太大,而且 用索引的话 花费时间都在io操作上,查询还是要花费很长的时间,一半都要25秒左右,是不堪忍受的! 大家再讨论一下,主要 表 原来是 公司名称的字段是索引列,查询效果也不理想!
回复
程序猿之殇 2008-11-24
如果不用索引的话,
1000W数据大约得5,6秒吧.
还是很伤的.
回复
Zijian_Zhang 2008-11-24
对,用索引
回复
iasky 2008-11-24
Index,视图
回复
梦无痕123 2008-11-24
查看下数据库索引
回复
相关推荐
发帖
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
帖子事件
创建了帖子
2008-11-24 09:52
社区公告
暂无公告