我有多个数据表:我想合并它们(我的PK:emp_num)
var tblEmp_data = new DataTable();//one row
var tblEmp_time = new DataTable();//one row
var tbl_emp_mission = new DataTable();//one row
tblEmp_data = GetEmpInfo(empNum);
tblEmp_time = GetEmpTime(empNum, start_period, end_period);
tbl_emp_mission = GetEmpMission(empNum, start_period, end_period);
tblEmp_data.Merge(tblEmp_time, false, MissingSchemaAction.Add);
tblEmp_data.AcceptChanges();
tblEmp_data.Merge(tbl_emp_mission, false, MissingSchemaAction.Add);
tblEmp_data.AcceptChanges();
Run Code Online (Sandbox Code Playgroud)
现在我获得了多行而不是一行的数据!我希望数据在一行?这该怎么做 ?
注意:我希望除主键之外的所有列都允许null,所以我避免了这个异常:
failed to enable constraints. one or more rows contain values violating non-null, unique, or foreign-key constraints
Run Code Online (Sandbox Code Playgroud)
导致问题的第三个表:
public static DataTable GetEmpMission(int empNum, DateTime start_period, DateTime end_period)
{
using (IfxConnection con = new IfxConnection(ConfigurationManager.ConnectionStrings["tl"].ToString()))
{ …Run Code Online (Sandbox Code Playgroud) 我有两个DataTables这样的:
DataTable dt1 = new DataTable();
DataTable dt2 = new DataTable();
Run Code Online (Sandbox Code Playgroud)
dt1:
dt2:
我需要合并两个DataTables并设置为GridView这样:
dt1.Merge(dt2, true, MissingSchemaAction.Add);
GridView1.DataSource = dt1;
GridView1.DataBind();
Run Code Online (Sandbox Code Playgroud)
但得到这样的输出:
我怎么能这样合并?
我有两个数据表如下所示
表格1
-------------------------
ID | Name
--------------------------
1 | JOHN
2 | GEORGE
3 | RAGU
--------------------------
Run Code Online (Sandbox Code Playgroud)
表2
----------
ID | AGE
----------
1 | 23
2 | 23
3 | 22
----------
Run Code Online (Sandbox Code Playgroud)
我只想得到这样的结果..
结果
-------------------------
ID | Name | AGE
--------------------------
1 | JOHN | 23
2 | GEORGE | 23
3 | RAGU | 22
--------------------------
Run Code Online (Sandbox Code Playgroud)
谢谢..
我有一个带有动态列列的数据表,并希望聚合基于数字的列并将最终行保存到新的数据表中.
DataTable示例: -
PartnerName CreditCol DebitCol AmountCol ....
P1 10 20 30
P2 1 2 3
P3 3 1 10
P2 1 100 200
Run Code Online (Sandbox Code Playgroud)
所需的输出应为: -
PartnerName CreditCol DebitCol AmountCol ....
P1 10 20 30
P2 2 102 203
P3 3 1 10
Run Code Online (Sandbox Code Playgroud)
这里的主要内容是列集,并且是动态的.有时,可能有两列,有时可能是20列.请建议linq查询或任何其他解决方案.