日期:2014-05-17  浏览次数:20644 次

大量数据查询效率优化
数据库中有一张百万级数据的表,现在我需要对其进行循环遍历查询,已经将表读到内存中,但是还是很缓慢,有没有办法优化一下?谢谢

------解决方案--------------------
1.不要使用select * 
一定要指定列名
2.加索引
3.如果可能的话使用SqlDataReader会快

------解决方案--------------------
//这张表数据很多  
dtDetails = DBHelp.QueryDataTable("select * from RecordDetails"); 
//这张表大概1000条以内的数据,需要根据关联字段去dtDetails中筛选,筛选出dtNow中满足项的ProductId列值             
DataTable dtNow = dgvReport.DataSource as DataTable; 


dtDetails = DBHelp.QueryDataTable("select * from RecordDetails"); 
能不能不查所有的 就查符合dtNow 里ProductId的?


------解决方案--------------------
使用缓存机制,如我在 http://bbs.csdn.net/topics/390427696 说的。