【问题标题】:inner join with DataTables与 DataTables 的内部连接
【发布时间】:2011-12-27 03:12:23
【问题描述】:

我有两个数据表。我想将它们内部连接到一个新的数据表中。没有数据库访问权限。

数据表的第一列是关键字段。

 string ParentKeyColumn = dt1.Columns[0].ColumnName;
 string ChildKeyColumn = dt2.Columns[0].ColumnName;

我也在使用 Devexpress 组件。

我该怎么做?

【问题讨论】:

    标签: c# winforms datatable devexpress inner-join


    【解决方案1】:

    看看this blog post on social.msdn

    关键细节:

    定义一个主键:

    dt2.PrimaryKey = new DataColumn[] { dt2.Columns["Deptno"] };
    

    定义数据关系并将其添加到您的数据集:

    DataRelation drel = new DataRelation("EquiJoin", dt2.Columns["Deptno"], dt1.Columns["Deptno"]);
    
    ds.Relations.Add(drel);
    

    【讨论】:

    • 谢谢詹姆斯。但我没有独特的列。我在这一行遇到错误;dt2.PrimaryKey = new DataColumn[] { dt2.Columns["Deptno"] }; :这些列目前没有唯一值。
    【解决方案2】:

    我将以编程方式创建您需要的 DataTable,然后根据以下答案中的第一个使用 LINQ 加载数据。

    Using LINQ

    Using Merge

    From MSDN Forums

    【讨论】:

      猜你喜欢
      • 2010-10-14
      • 2017-06-24
      • 2011-04-20
      • 2013-01-03
      • 2016-08-18
      • 2021-06-28
      • 1970-01-01
      • 2010-09-25
      相关资源
      最近更新 更多