首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

怎样合并这样的datatable?该怎么解决

2012-01-19 
怎样合并这样的datatable?两个datatable的格式如下datatbale1s_codes_name1姓名一2姓名二datatable2s_code

怎样合并这样的datatable?
两个datatable的格式如下
datatbale1
s_code s_name
  1 姓名一
  2 姓名二

datatable2
s_code s_age
  1 11
  2 12
  3 14
  5 16

我需要合并的结果是
s_code s_name s_age
  1 姓名一 11
  2 姓名二 12


datatable2中s_code里在datatable1中不存在的就不需要了,如 3 和 5就不需要

我用datatable1.Merge(datatable2);它会全部显示的

[解决办法]
请问一个这两个datatbale1 是怎么得到滴啊,
能否直接在数据库中合并只返回一个datatbale列
[解决办法]

C# code
建议将这种东西放在SQL里面去处理,如果一定要在程序中处理的话,可以如下:ds.Tables["datatbale1"].Columns.Add(new DataColumn("s_age")); //先给datatbale1增加一列s_age列。for(int i=0;i<ds.Tables["datatbale1"].Rows.Count;i++){    for(int j=0;j<ds.Tables["datatbale2"].Rows.Count;j++)    {        if(ds.Tables["datatbale1"].Rows[i]["s_code"].ToString()==ds.Tables["datatbale2"].Rows[j]["s_code"].ToString())  //判断当两个datatable的s_code相等时,将datatbale1的s_age等于datatbale2的s_age。        {            ds.Tables["datatbale1"].Rows[i]["s_age"]=ds.Tables["datatbale2"].Rows[j]["s_age"].ToString();        }    }}//这样datatable1就变成楼主想要的合并后的结果了。DataGrid1.DataSource=ds.Tables["datatbale1"];DataGrid1.DataBind(); 

热点排行