如:表一
ID    QTY    TOTAL
1     12
2     12
1     8
2     18
2     20
1     50
表二:
ID    QTY    TOTAL
1     12     70
1     8
1     50
2     12     50
2     18
2     20通过表一中的记录,汇总成表二中的记录?
用什么方法?

解决方案 »

  1.   

    如果是DataTable,其本身就支持compute方法。
      

  2.   

    如:表一
    ID    QTY    TOTAL
    1     12
    2     12
    1     8
    2     18
    2     20
    1     50
    3     20
    4     30
    表二:
    ID    QTY    TOTAL
    1     12     70
    1     8
    1     50
    2     12     50
    2     18
    2     20
    3     20     20
    4     30     30通过表一中的记录,汇总成表二中的记录?
    用什么方法?是在DataSet的DataTable中。
    那怎么样计算?
      

  3.   

    Sample code as follows:DataTable myTable;
    myTable = myDataSet.Tables["yourTable"];// Declare an object variable.
    object objSum;
    objSum = myTable.Compute("Sum(QTY)", "ID = 1");
      

  4.   

    呵呵……现在还是用楼上的方法做的。
    把表中所有不相同的ID保存到 int[] 中;
    循环数组中的 ID;
    用ID汇总,再通过ID在视图中过滤,得到过滤后的第一行,
    再把汇总的结果保存到第一行的 TOTAL 列中。
      

  5.   

    各位高手,打扰了!我是一家颇具规模的IT 公司,目前正在招聘.NET开发工程师,工作地点在北京,薪资待遇从优,联系我啊!MSN:[email protected]
      

  6.   

    那如果在数据库中用查询语句怎么样写。
    让相同ID的记录,汇总结果只保存在对应ID行记录的第一行。
      

  7.   

    to 让相同ID的记录,汇总结果只保存在对应ID行记录的第一行这一点,不太好做,不知道你的顺序是如何
      

  8.   

    如:表一
    ID    QTY    TOTAL
    1     12
    2     12
    1     8
    2     18
    2     20
    1     50
    3     20
    4     30
    表二:
    ID    QTY    TOTAL
    1     12     70
    1     8
    1     50
    2     12     50
    2     18
    2     20
    3     20     20
    4     30     30由表一做成表二不好做。表二:
    ID    QTY    TOTAL
    1     12     70
    1     8      70
    1     50     70
    2     12     50
    2     18     50
    2     20     50
    3     20     20
    4     30     30这种就好做些吧。
      

  9.   

    表二:
    to
    ID QTY TOTAL
    1 12 70
    1 8 70
    1 50 70
    2 12 50
    2 18 50
    2 20 50
    3 20 20
    4 30 30恩,这种好做多了,你用SQL修改更简单
      

  10.   

    Sql update yourTable Set yourTable.Total = SumTable.TotalCount 
    From yourTable, 
    ( Select ID, Sum( QTY ) as TotalCount From yourTable Group By ID ) as SumTable 
    Where yourTable.ID = SumTable.ID
      

  11.   

    呵呵……
    为在在报表中显示如下结果,最后还是在表中处理。用视图之类的。
    报表显示结果。
    ID   QTY   TOTAL
    1    20    90
    1    30    
    1    40    
    2    10    60
    2    20
    2    30
    3    50    50
    4    100   100