DataTable中进行Distinct、Group by、Join、Create

Code
using System; 
using System.Collections; 
using System.Data; 
 
namespace Common 

    
/**//**//**//// <summary> 
    
/// DataSet助手 
    
/// </summary> 

    public class DataSetHelper 
    

        
private class FieldInfo 
        

            
public string RelationName; 
            
public string FieldName; 
            
public string FieldAlias; 
            
public string Aggregate; 
        }
 
 
        
private DataSet ds; 
        
private ArrayList m_FieldInfo; 
        
private string m_FieldList; 
        
private ArrayList GroupByFieldInfo; 
        
private string GroupByFieldList; 
 
        
public DataSet DataSet 
        

            
get return ds; } 
        }
 
 
        ConstructionConstruction
Construction 
 
        Private MethodsPrivate Methods
Private Methods 
 
        SelectDistinct 
/ DistinctSelectDistinct / DistinctSelectDistinct / Distinct 
 
        Select Table IntoSelect Table Into
Select Table Into 
 
        Group By TableGroup By Table
Group By Table 
 
        Join TablesJoin Tables
Join Tables 
 
        Create TableCreate Table
Create Table 
    }
 
}

调用:
dt = dsHelper.SelectGroupByInto("OrderSummary", ds.Tables["Employees"],
    "EmployeeID,sum(Amount) Total,min(Amount) Min,max(Amount) Max", "EmployeeID<5", "EmployeeID");

此调用示例创建新 DataTable 具有四个字段 (EmployeeID、 总计、, Min 和 Max) 以及 OrderSummary TableName 。 这些四个字段具有相同数据类型, EmployeeID 和 Orders 表中数量字段。 然后本示例从 Orders DataTable , 读取记录并将记录写入 OrderSummary DataTable 。 OrderSummary DataTable 包含 EmployeeID 域和三个不同的聚合的金额字段上筛选, EmployeeID EmployeeID 5 和, 是上分组 (和按) < "。 如果 GroupBy 参数是空白, DataTable 目标包含聚合所有输入仅单个记录。

参考地址:http://support.microsoft.com/kb/326145
http://topic.csdn.net/t/20060514/14/4750499.html

posted on 2008-03-25 10:42  恋地高飞  阅读(11587)  评论(2编辑  收藏  举报

导航