LINQ合并两张表查询的结果集

var lines1 = from m in _dbContext.OdBoms

join n in _dbContext.OdBomDrawLines on m.DocEntry equals n.DocEntry

where m.Station == station && n.LineStatus!="C"

select new

{

Station = m.Station,

DocEntry = m.DocEntry,

LineNum = n.LineNum,

OdBomId = m.OdBomId,

OdBomName = m.OdBomName,

ProjectId = m.ProjectId,

SideLine = m.SideLine,

Regional = m.Regional,

Equipment = m.Equipment,

DrawingsCode = n.DrawingsCode,

DrawingsName = n.DrawingsName,

ItemCode = "",

ItemName = "",

Material = n.Material,

Size = "",

LeftQty = n.LeftQty,

RightQty = n.RightQty,

Memo = n.Memo

};

var lines2 = from m in _dbContext.OdBoms

join n in _dbContext.OdBomItemLines on m.DocEntry equals n.DocEntry

where m.Station == station && n.LineStatus!="C"

select new

{

Station = m.Station,

DocEntry = m.DocEntry,

LineNum = n.LineNum,

OdBomId = m.OdBomId,

OdBomName = m.OdBomName,

ProjectId = m.ProjectId,

SideLine = m.SideLine,

Regional = m.Regional,

Equipment = m.Equipment,

DrawingsCode = "",

DrawingsName = "",

ItemCode = n.ItemCode,

ItemName = n.ItemName,

Material = "",

Size = n.Size,

LeftQty = n.LeftQty,

RightQty = n.RightQty,

Memo = n.Memo

};

var lines = (from m in lines1 select m).Union(from n in lines2 select n);

时间: 2024-11-05 00:47:19

LINQ合并两张表查询的结果集的相关文章

CROSS JOIN连接用于生成两张表的笛卡尔集

将两张表的情况全部列举出来 结果表: 列= 原表列数相加 行= 原表行数相乘 CROSS JOIN连接用于生成两张表的笛卡尔集. 在sql中cross join的使用: 1.返回的记录数为两个表的记录数乘积. 2.将A表的所有行分别与B表的所有行进行连接. 例如: tableA r1 r2 A B C D tableB r3 r4 1 2 3 4 select * from tableA cross join tableB; return: r1 r2 r3 r4 r1 r2 1 2 r1 r2

mysql中 如何合并两张表

mysqldump -d:只导出表结构,不含数据 导出完整的数据库的数据不含表结构 mysqldump -t :只导出数据,不含表结构 解决方法:mysqldump -t 在原来数据库中,只把表数据导出来 然后 导入到要合并的数据库里面就可以 注意 : 如果不加 -t 会把表结构跟表数据都导出来,这样,在合并表的时候,因为都存在表结构,他会把原有表结构以及数据删除,然后才把新数据导入,这样就没有了原来的数据 原文地址:http://blog.51cto.com/12916925/2087170

ADO:DataSet合并两张表( ds.Merge(ds1))

原文发布时间为:2008-08-01 -- 来源于本人的百度文章 [由搬家工具导入] using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebContro

DataSet的Merge方法合并两张表

原文发布时间为:2008-08-01 -- 来源于本人的百度文章 [由搬家工具导入] UniqueConstraint uc = new UniqueConstraint("pk", ds.Tables["t1"].Columns["title_id"], true);        ds.Tables["t1"].Constraints.Add(uc);//表必须设主键,不然会直接合并到表的下面 ds.Merge(ds1);

两张表并集求相同字段的和

有两张表a b 每张表里有两个字段都是id numa表的值id  num   b表的值  id  numa    5             b   15b    10            c   20c    15            d   20d    20            e   30求出两张表的结果 用一条sql结果值id  numa   5b   25c   35d   40e   30 SELECT `id`, SUM(`num`) FROM (SELECT * FROM

mysql多张表合并一张表进行查找

今天有个需求是 mysql多张表合并一张表查询出该表有多少个userid(去重). 首先我的思路是,把多张表采用union合并成一张表,然后进行group by, 最后进行sum(userid), 得出数量. select COUNT(DISTINCT(`user_id`)) FROM ( select user_id from log_20160706 union select user_id from log_20160707 union SELECT user_id from log_20

sqlserver 把两个sql查询语句查询出来的两张表合并成一张表

第一个sql语句 select companyname gsmc,zb zhibiao from t_gsndzb left join t_companycode on t_gsndzb.gsbh=t_companycode.companyid 查询结果: 第二个sql语句 SELECT min(companyname) gsmc,cast(round(sum(t_xstj.hsje)/10000,2) as numeric(20,2)) ndje FROM t_xstj left join t

mysql左连接右连接(查询两张表不同的数据)

left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 :right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录:inner join(等值连接) 只返回两个表中联结字段相等的行: 表A数据: 表B数据: 1.查询两张表中都有的记录: sql: SELECT a.* FROM a INNER JOIN b ON a.a_id = b.b_id; 2.查询表A中有,表B中没有的数据: sql: SELECT a.* FROM a LEFT JO

mysql高效获取两张表共同字段的交集数据

问题: 例如下面两站表A,B.A表和B表分别有5-10w数据.A表结构如下:id bid name title publisher extraB表结构如下id bid name title publisher A出版社也为很多人出版了书籍,B出版社也为很多人出版了书籍,有sql语句找出这两个出版社为那些人 共同出版书籍,用innerjoin太慢,有没有什么更好的办法? 解答一: 由于不知道你表的索引情况,至于用join还是in和exists不太好说,理论上讲,exists最快.in次之.join