我按时间(天)查询数据,假如选择三天,就有table1,table2,table3三张表,table3是最新一天的数据表,作为基准表,每张表里面有近百万条数据,现在要以时间前推来遍历table2,和table1表,以table3中字段A作为主键,如果table2中存在A而table3没有,就把table2中的这一行插入到table3中去  ,同理处理table1
  由于数据量过大,要怎么处理效率才高点呢 可以用linq吗,高手给点提示

解决方案 »

  1.   

    这根linq没关系,如果你的思想只停留在数据库上,估计也提高不了什么,你可以将一些基础数据或者变动不大的数据,放到缓存,不要每次都访问数据库,这样自己定义数据结构存储到 内存(比如hash),方便你的比对
      

  2.   

    你这还不是搞3个遍历吗,基本没有效率可言,如果在内存中有hash表存储,那么表之间又有key作为关联,那么只是个定点访问而已,至少可以减少 一个表的遍历
      

  3.   


    使用hash表还是得遍历一次啊