如何在c#中将两个数据表合并为一个数据表

时间:2012-06-29 10:37:51

标签: c#

我有两个数据表,我想合并它们并希望输出像这样;

表1值:

FirstName   LastName    
  AAA         BBB         
  AAA         BBB

表2值: *

FullName
  CCC
  CCC

*

现在我希望FullName的值和FirstName的值合并为Firstname的一列 合并之后应该是这样的......

FirstName   LastName    
  AAA         BBB         
  AAA         BBB         
  CCC
  CCC   

两个out表都有来自dtable1的FirstName和LastName以及来自dtable2的FullName

我在c#application

中有这段代码
             DataSet firstGrid = new DataSet();
            DataSet secondGrid = new DataSet();
            DataTable table1 = dataGridView3.DataSource as DataTable;
            DataTable table2 = dataGridView2.DataSource as DataTable;
            DataColumn[] colunm = new DataColumn[table1.Columns.Count];



            DataTable table3 = new DataTable();
           // table3.;
            table3 = table1.Copy();

            table3.Merge(table2);
            dataGridView1.DataSource = table3;

2 个答案:

答案 0 :(得分:2)

这是你在找什么?

SELECT FirstName, LastName
FROM Table1

UNION

SELECT FullName AS 'FirstName', NULL AS 'LastName'
FROM Table2

答案 1 :(得分:1)

你可以试试这个

for(int i=0;i<dataTable2.Rows.Count;i++)
{
    DataRow drTemp=dataTable1.NewRow();
    drTemp[0]=dataTable2.Rows[i][0];
    drTemp[1]="";
    dataTable1.Rows.Add(drTemp);
}

基本上,您要将全名插入table1的第一个名称,并使用空值作为姓氏。最后,dataTable1将与dataTabe2合并。