数据库分表和分区的问题

极地_雪狼 2012-01-09 06:18:43
SQLSERVER2000(32位)数据库中news表有150W条记录,由于需要使用了Like语句,有些常用语句,查询需要扫描5W左右的记录才能返回,现在数据的查询速度有些慢。有什么好办法解决吗?

另外,想将此表切分,是采用分表后union all比较好,还是采用分区表比较好?
请高手指点。
...全文
124 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
极地_雪狼 2012-01-09
  • 打赏
  • 举报
回复
呵呵,这么多星星,荣幸之至,明天改一下试试。
AcHerat 2012-01-09
  • 打赏
  • 举报
回复
150W的数据量不是很大了,在like前先把要筛选的数据找出来,最后在用like来获取需要的数据,不会直接接收几十万或上百万的数据显示出来吧!
黄_瓜 2012-01-09
  • 打赏
  • 举报
回复
升级到05或者08 然后建立一些索引都

效果会很明显。
SQL77 2012-01-09
  • 打赏
  • 举报
回复
150W也多啊,
-晴天 2012-01-09
  • 打赏
  • 举报
回复
150W 条数据应该不算多,关键是,你用 like 来查询速度很难加快,你可以考虑采用全文索引.分表也不行,因为你并没有把这些内容分成数个不同区间的方案,最后查的,还是要在全部数据中进行查询.
如果like 子句采用这样的形式: like 'asdf%',即模糊查询模糊的是查询字符串后半部的话,还能利用索引,否则不行.
极地_雪狼 2012-01-09
  • 打赏
  • 举报
回复
想升级到SQLSERVER 2008 64位

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧