查询速度 数据库表中有数据2千多万条,从中查了三百多万条数据用了三分多,感觉很慢啊。 如何能加快速度啊。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select sensorid,maxwl,minwl,midwl,senddate from originaldatas where senddate between 'dt1' and 'dt2' order by senddate. 我在senddate上加了索引了。。但效果不是很明显啊! 如果这个索引是clustered index, 那么300W 条数据的扫描时间也是必不可少的如果这个索引不是clustered index, 那么300W条数据很可能要读所有的页建议检查query plan,是否从senddate的index上进行了index scan, 如果没有,说明几乎要读所有的page; 如果sendate上的index不是clustered,改成clustered; 如果可以改成clustered index, 用row_number()来实现分页, 300W数据没有必要一次返回,可以先返回部分数据, 分几次返回, index scan可以保证是排好序的; 如果不能改成clustered index, 将日期条件的between范围缩小,比如到原先的1/100, 然后多次用不同的between范围运行查询, 注意检查确保query plan是通过sendate上的index进行了读取,这样才能保证结果是排序的。 求,,,SQL中如何替换列中的某几个相同的字符!!!! 初学 sql存储过程和触发器 查询计算的问题 SQL怎么显示系统中所有的索引呀 下载sql server 2005 问个简单的sql字符串转换问题,急! 问一个弱弱的问题,关于操作MS-SQL建表的 想从服务商买个sql server 2000的数据库,如何验证sql server数据库的连接速度和数据的存取速度? 怎样读取各表的主键,次键,关系,约束,请大家指教!!!!!! 设计怎样的一张表能更好的表示层次结构的数据 自然连接如何取出重复属性? 一个很基础的问题!有朋友帮忙解答一下吧
如果这个索引不是clustered index, 那么300W条数据很可能要读所有的页建议
检查query plan,是否从senddate的index上进行了index scan, 如果没有,说明几乎要读所有的page; 如果sendate上的index不是clustered,改成clustered; 如果可以改成clustered index, 用row_number()来实现分页, 300W数据没有必要一次返回,可以先返回部分数据, 分几次返回, index scan可以保证是排好序的; 如果不能改成clustered index, 将日期条件的between范围缩小,比如到原先的1/100, 然后多次用不同的between范围运行查询, 注意检查确保query plan是通过sendate上的index进行了读取,这样才能保证结果是排序的。