gpt4 book ai didi

c# - 如何对 2 个数据表执行 Union All

转载 作者:太空宇宙 更新时间:2023-11-03 19:55:07 26 4
gpt4 key购买 nike

我没有使用 Entity Framework 。有 2 个数据表,每个都有不同的编号。的列。有一个公共(public)列 - ItemId

如果是 Union,我会使用“Merge”,但不知道如何为这 2 个数据表执行 Union All

public static void Main()
{
//First DataTable
DataTable dt1 = new DataTable();
dt1.Columns.Add("ItemId");
dt1.Columns.Add("Name");
dt1.Columns.Add("Color");

DataRow dr = dt1.NewRow();
dr["ItemId"] = "1";
dr["Name"] = "Name1";
dr["Color"] = "Color1";
dt1.Rows.Add(dr);

dr = dt1.NewRow();
dr["ItemId"] = "2";
dr["Name"] = "Name2";
dr["Color"] = "Color2";
dt1.Rows.Add(dr);

//Second DataTable
DataTable dt2 = new DataTable();
dt2.Columns.Add("ItemId");
dt2.Columns.Add("Name");
dt2.Columns.Add("Price");

DataRow dr2 = dt2.NewRow();
dr2["ItemId"] = "1";
dr2["Name"] = "Name1";
dr2["Price"] = "100";
dt2.Rows.Add(dr2);

dr2 = dt2.NewRow();
dr2["ItemId"] = "2";
dr2["Name"] = "Name3";
dr2["Price"] = "200";
dt2.Rows.Add(dr2);
}

预期输出

ItemId  Name    Color   Price
1 Name1 Color1
2 Name2 Color2
1 Name1 100
2 Name3 200

最佳答案

您可以使用 DataTable.Merge()

如果您在两个表中都有主键,那么它将对主键执行合并,否则它将直接追加所有记录。

在这种情况下,将 ItemID 作为主键。

关于c# - 如何对 2 个数据表执行 Union All,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34543746/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com