简单的表间连接...得到的数据源并不能满足变态的需求...
还需要继续构造成一个复杂的数据源...1.用存储过程来实现:因为牵扯行列置换...而且行列都不确定...可能会用游标来循环遍历多次...数据量也不小...2.在后台代码中...构建DataTable...当然也是循环...以上这两种解决方法哪种性能更好一点?或者...还有什么更好的方法...

解决方案 »

  1.   

    不要在数据源内构造,我们公司都是拉的数据,但在页面表示的时候用自己的html来写的。不能用控件。
      

  2.   

    行列置换,lz还是从如何构建交叉表的概念上面下功夫吧,你说的那两种方案效率肯定不好。
    1.用sql语句实现;
    2.可以把数据写临时表。
      

  3.   

    现有环境:数据库服务器和Web服务器是一个...我新人...主要是想从性能上考虑一下...很愁吗?呵呵...
    交叉表...我还是第一次听说这个名词...学习一下去...我数据库,学的不太好...问别的同事...他们说...这个地方需要用到游标...嗯...好...这就看看...
      

  4.   

    你想的太复杂了,使用临时表即可。
    select * into #t from (你需要的复杂) as tb
    进行逻辑处理
    最后 drop table #t得到的#t表就是列是根据你的复杂查询的。这样子举一反三,你可以生成更多的临时表来方便你操作。
      

  5.   

    没有疑问的,再怎么也快不过直接在数据库中处理完再放到页面,你的datatable再怎么也快不过存储过程
      

  6.   


    那你要看什么数据了,如果过于复杂的数据并且需要大量的重复查询,在datatable的速度是存储过程的n倍 具体多少倍没计算过随着查询的复杂datatalbe的速度将更加的明显,要知道datatable的查询是在内存中操作的速度是最快的。