如何提高SQL查询速度
请问下怎样可以提高查询速度,老师说可以用索引,或者视图或者存储过程等等,可是我还是没有具体的实现,下午我把数据库里插入了近百万的数据,查询东西需要等1.5秒左右,好郁闷,...
请问下怎样可以提高查询速度,老师说可以用索引,或者视图或者存储过程等等,可是我还是没有具体的实现,下午我把数据库里插入了近百万的数据,查询东西需要等1.5秒左右,好郁闷,
展开
3个回答
2013-08-21
展开全部
索引对数据库检索优化时很重要的一个概念聚集索引在SQL中是唯一的也就是说聚集索引时一个很宝贵的资源但是SQL SERVER在自动分配索引的时候默认总是将ID主键分配为聚集索引其实是很浪费的通常情况下你可以通过语句创建聚集索引到你使用率最高的条件字段上面去,当然你必须先分配聚集索引然后再去分配主键,否则主键创建时就会自动占用聚集索引然后非聚集索引不能设置过滥,设置过滥会导致目录增多最后反而导致查询缓慢优化不是纯粹理论上的东西,理论教会你怎么去使用尝试才能获取经验
推荐于2017-11-26
展开全部
1 你老师说的对,建立索引是可以提高查询速度的。你插入了百万条数据,可以测试。如果在C字段上建立索引,那以该字段为查询条件,在建立后查询和删除索引后查询比较一下就知道了。2 关于视图。是提高不了查询速度的,因为视图对应一个SQL语句,它只是存起来而已,最后需要进行视图消解才能进行查询,它和直接执行相应的语句是一样的,理论上还要慢一点。3 关于存储过程,弄好了是可以提高查询效率的,因为存储过程会把一段查询,也就是SQL语句进行贤编译,然后将编译后的代码存在于服务器上,在用户查询时节省了SQL的编译时间,所以加快了查询速度。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-21
展开全部
对于经常用到的搜索列 比如where name=‘’ name就可以加索引 对于用来排序的 order by的字段也可以加索引 用视图或者存储过程也有他们自己的效果。存储过程就直接创建然后调用就行了··
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询