zoukankan      html  css  js  c++  java
  • LINQ的左连接、右连接、内连接

    1、左连接:

    var LeftJoin = from emp in ListOfEmployees
    join dept in ListOfDepartment
    on emp.DeptID equals dept.ID
    into JoinedEmpDept
    from dept in JoinedEmpDept.DefaultIfEmpty()
    select
    new                        
    {
    EmployeeName = emp.Name,
    DepartmentName = dept != null ? dept.Name : null                        
    };

     

    多张表的左联接:

    var query = from k in DBContext.KCYD
                 join i in DBContext.ITEM
                 on k.SPXXID equals i.ITEM_ID into g
                 from gc in g.DefaultIfEmpty()
                 join s in DBContext.SPKC
                 on new {SPXXID=k.SpxxId,CKID=k.Ckid} equals new {s.SPXXID,s.CKID} into g1
                 from gc1 in g1.DefaultIfEmpty()
                 select new
                 {
                     ... ...                            
                 };

    2、右连接:

    var RightJoin = from dept in ListOfDepartment
    join employee in ListOfEmployees
    on dept.ID equals employee.DeptID into joinDeptEmp
    from employee in joinDeptEmp.DefaultIfEmpty()
    select
    new                          
    {
    EmployeeName = employee != null ? employee.Name : null,
    DepartmentName = dept.Name
    };

    3、内连接:

    var query = from t in
    entitiy.TB_GCGL_ADA_USER                
    join p in entitiy.TB_GCGL_ZY_ZYK             
    on t.ETPRS_CODE equals p.ETPRS_CODE
          
    select new
    TB_USER_ZYK             
                
    USER_ID =
    t.USER_ID,          
    USER_NAME =
    t.USER_NAME,            
    USER_PASSWORD = t.USER_PASSWORD,
              
    };

     

    多张表内联

    var rec=from a in 表A

    join b in 表B on a.字段 equals b.字段

    join c in  表C on b.字段 equals c.字段 
    select new item
    {
       item1=a.想要的字段,
    item2=b.想要的字段,
    item3=c.想要的字段,
    }

  • 相关阅读:
    redis基础和sentinel
    Redis 官方集群
    python3基础(九)内置函数
    cobbler安装配置.基本全了多看help和docs
    #多个关联的python程序在linux后台运行
    python3基础(七)函数基础
    python基础(八)生成器,迭代器,装饰器,递归
    (03)-Python3之--元组(tuple)操作
    (02)-Python3之--列表(list)操作
    (01)-Python3之--字符串操作
  • 原文地址:https://www.cnblogs.com/itjeff/p/4159773.html
Copyright © 2011-2022 走看看