简体   繁体   English

对 EF 中的 3 个表执行内部连接

[英]perform inner Join for 3 tables in EF

Hello i'm trying to implement inner join for three tables I start with two tables it gives me the appropriate result.你好,我正在尝试为三个表实现内部连接,我从两个表开始,它给了我适当的结果。

But i don't know how to implement join for three tables?但是我不知道如何实现三个表的连接? could anyone help?有人可以帮忙吗?

This is the select statement i would like to do it in EF:这是我想在 EF 中执行的选择语句:

SELECT
  capt_ar AS VehicleState,
  cont_name,
  vehl_drivername,
  vehl_name,
  vehl_entrancedate,
  vehl_customsdec,
  cont_rampid
FROM Container
  INNER JOIN
  Vehicle ON Container.cont_vehicleid = Vehicle.vehl_VehicleID
  INNER JOIN
  Custom_Captions ON Vehicle.vehl_state = Custom_Captions.Capt_Code
WHERE capt_family = 'vehl_state'
      AND vehl_Deleted IS NULL AND cont_Deleted IS NULL
      AND vehl_ClearanceCompany = 471

在此处输入图片说明

Updated: Query Result in SQL server更新:SQL 服务器中的查询结果

Update: this is what i tried to do but no output更新:这是我试图做但没有输出

var result = (from cont in db.Containers
              join veh in db.Vehicles on cont.cont_vehicleid equals veh.vehl_VehicleID
              join cap in db.Custom_Captions on veh.vehl_state equals cap.Capt_Code
              where cap.Capt_Family == "vehl_state && veh.vehl_Deleted == null && cont.cont_Deleted == null && veh.vehl_ClearanceCompany =="+p.pusr_CompanyId
              select new { cap.Capt_AR, cont.cont_Name, veh.vehl_drivername, veh.vehl_Name, veh.vehl_entrancedate, veh.vehl_customsdec, cont.cont_rampid }
var query = (from con in db.Containers
                             join v in db.Vehicles on con.cont_vehicleid equals v.vehl_VehicleID
                             join cust in db.Custom_Captions on v.vehl_state equals cust.Capt_Code
                             where cust.Capt_Family== "vehl_state" && v.vehl_Deleted==null && con.cont_Deleted==null && v.vehl_ClearanceCompany==p.pusr_CompanyId
                             select new
                             {
                                 cont_name=con.cont_Name,
                                 vehl_Name=v.vehl_Name,
                                 VehicleState=v.vehl_state,
                                 vehl_drivername=v.vehl_drivername,
                                 vehl_entrancedate=v.vehl_entrancedate,
                                 vehl_customsdec=v.vehl_customsdec,
                                 cont_rampid=v.vehl_rampid
                             }
                             ).ToList();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM