LINQ - Inner Join(内联接)

LINQ - Inner Join(内联接) 首页 / LinQ入门教程 / LINQ - Inner Join(内联接)

在LINQ中,INTERNAL JOIN用于根据指定条件从集合中仅返回匹配的记录或元素。

LINQ INTERNAL JOIN的语法

下面是使用LINQ内部联接根据指定条件从集合中获取元素的语法。

var result = from d in objDept  
join e in objEmp  
on d.DepId equals e.DeptId  
select new  
{  
EmployeeName = e.Name,  
DepartmentName = d.DepName  
};  

从上面的语法中,无涯教程试图根据匹配的“DeptId”列值从“objEmp”,“objDept”集合中获取元素。

链接:https://www.learnfk.comhttps://www.learnfk.com/linq/linq-inner-join.html

来源:LearnFk无涯教程网

LINQ内联接示例

下面是使用LINQ内部联接根据指定条件从集合中获取元素的示例。

C#代码

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Programme2
    {
        static void Main(string[] args)
        {
   /* 创建一个“Department”类的对象并创建一个添加记录的部门列表*/
            List Dept = new List
    (){
    new Department{DepId=1,DepName="Software"},
    new Department{DepId=2,DepName="Finance"},
    new Department{DepId=3,DepName="Health"}
    };
    /* 创建一个“Employee”类的对象并创建一个
添加记录的员工列表*/
    ListEmp = new List
    ()
    {
    new Employee { EmpId=1,Name = "Akshay Tyagi", DeptId=1 },
    new Employee { EmpId=2,Name = "Vaishali Tyagi", DeptId=1 },
    new Employee { EmpId=3,Name = "Arpita Rai", DeptId=2 },
    new Employee { EmpId=4,Name = "Sateesh Alavala", DeptId =2},
    new Employee { EmpId=5,Name = "Madhav Sai"}
    };
    /*Linq 查询申请获取的信息
员工姓名和部门名称
在这里,无涯教程将员工与部门映射并将结果存储在变量“result”中*/
    var result = from d in Dept
    join e in Emp
    on d.DepId equals e.DeptId
    select new
    {
    EmployeeName = e.Name,
    DepartmentName = d.DepName
    };
    //foreach 循环遍历 result 变量中的所有数据并存储在 item 变量中
    foreach (var item in result)
    {
   /* Console.WriteLine(item.EmployeeName + "\t | " + item.DepartmentName)
将打印员工姓名和部门名称*/
    Console.WriteLine(item.EmployeeName + "\t | " + item.DepartmentName);
    }
    Console.ReadLine();
    }
    }
    //创建类 'Department' 和 'Employee' 并设置变量名
    class Department
    {
    public int DepId { get; set; }
    public string DepName { get; set; }
    }
    class Employee
    {
    public int EmpId { get; set; }
    public string Name { get; set; }
    public int DeptId { get; set; }
    }
}

输出:

LINQ Inner Join

从上面的示例中,无涯教程从映射员工与部门的两个集合中获取员工姓名和部门名称。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

从0开发一款iOS App -〔朱德权〕

Node.js开发实战 -〔杨浩〕

SRE实战手册 -〔赵成〕

分布式系统案例课 -〔杨波〕

跟月影学可视化 -〔月影〕

跟着高手学复盘 -〔张鹏〕

MySQL 必知必会 -〔朱晓峰〕

技术领导力实战笔记 2022 -〔TGO 鲲鹏会〕

手把手教你落地DDD -〔钟敬〕

好记忆不如烂笔头。留下您的足迹吧 :)