table1
id name
1 a
2 b
3 c
4 d
table 2
id class
1 c1
2 c2
4 c2
合并后:
id name class
1 a c1
2 b c2
3 c
4 d c2
id name
1 a
2 b
3 c
4 d
table 2
id class
1 c1
2 c2
4 c2
合并后:
id name class
1 a c1
2 b c2
3 c
4 d c2
下面这段代码dt1对应table1 ; dt2对应table 2 ;dt3是合成之后表。 DataTable dt3 = new DataTable();
DataColumn dc1 = new DataColumn("ID");
DataColumn dc2 = new DataColumn("Name");
DataColumn dc3 = new DataColumn("Class");
dt3.Columns.Add(dc1);
dt3.Columns.Add(dc2);
dt3.Columns.Add(dc3); foreach (DataRow dr in dt1.Rows)
{
DataRow d = dt3.NewRow();
d["ID"]=dr["ID"].ToString();
d["Name"]=dr["Name"].ToString();
DataRow[] drs = dt2.Select("ID=" + dr["ID"].ToString());
d["Class"] = drs.Count()==0?null:drs[0]["Class"].ToString();
dt3.Rows.Add(d);
}