C#如何把2个table合并成一个table?
例如:
A表有3列,其中的内容是
A1   B1    C1
A2   B2    C2
A3   B3    C3
B表有3列,其中的内容是
A11   B11    C11
A22   B22    C22
A33   B33    C33
希望合并后的C表的内容A1   B1    C1 A11   B11    C11
A2   B2    C2 A22   B22    C22
A3   B3    C3 A33   B33    C33
如何用代码实现?

解决方案 »

  1.   

    这2个表中的数据不是通过数据库得到的,是直接通过读取2个不同的excel文件分别得到的,因此,视图这种办法可以排除了
      

  2.   

    这是不是表的连接查询吗?left join.inner join。都可以。你写好sql语句。用c#代码执行即可。
      

  3.   

            public DataTable Convert(DataTable dt1,DataTable dt2)
            {
                DataTable table = new DataTable();
                table.Columns.Add("A");
                table.Columns.Add("B");
                table.Columns.Add("C");
                table.Columns.Add("D");
                table.Columns.Add("E");
                table.Columns.Add("F");
                int rowDt1 = dt1.Rows.Count;
                int rowDt2 = dt2.Rows.Count;
                int row = rowDt1;
                if (rowDt2 > rowDt1)
                    row = rowDt2;
                for (int i = 0; i < row; i++)
                {
                    DataRow dr = table.NewRow();
                    if (i < rowDt1)
                    {
                        dr["A"] = dt1.Rows[i]["A"].ToString();
                        dr["B"] = dt1.Rows[i]["B"].ToString();
                        dr["C"] = dt1.Rows[i]["C"].ToString();
                    }
                    if (i < rowDt2)
                    {
                        dr["D"] = dt1.Rows[i]["D"].ToString();
                        dr["E"] = dt1.Rows[i]["E"].ToString();
                        dr["F"] = dt1.Rows[i]["F"].ToString();
                    }
                    table.Rows.Add(dr);
                }
                return table;
            }