Inner Join gibt nur die Datensätze oder Zeilen zurück, die mit beiden Tabellen übereinstimmen oder in beiden Tabellen vorhanden sind. Wir können Verknüpfungen auch auf mehrere Tabellen anwenden, basierend auf den unten gezeigten Bedingungen.
Wenn wir auf der Grundlage mehrerer Bedingungen beitreten müssen, verwenden Sie anonyme Typen.Im folgenden Beispiel haben wir zwei Methoden geschrieben, die zum Beitritt in Linq verwendet werden können Hier werden Abteilungen und Mitarbeiter miteinander verbunden
class Program{ static void Main(string[] args){ var result = Employee.GetAllEmployees().Join(Department.GetAllDepartments(), e => e.DepartmentID, d => d.ID, (employee, department) => new{ EmployeeName = employee.Name, DepartmentName = department.Name }); foreach (var employee in result){ Console.WriteLine(employee.EmployeeName + "\t" + employee.DepartmentName); } var result1 = from e in Employee.GetAllEmployees() join d in Department.GetAllDepartments() on e.DepartmentID equals d.ID select new{ EmployeeName = e.Name, DepartmentName = d.Name }; foreach (var employee in result1){ Console.WriteLine(employee.EmployeeName + "\t" + employee.DepartmentName); } Console.ReadLine(); } } public class Employee{ public int ID { get; set; } public string Name { get; set; } public int DepartmentID { get; set; } public static List<Employee> GetAllEmployees(){ return new List<Employee>(){ new Employee { ID = 1, Name = "A", DepartmentID = 1 }, new Employee { ID = 2, Name = "B", DepartmentID = 2 }, new Employee { ID = 3, Name = "B", DepartmentID = 1 }, new Employee { ID = 4, Name = "V", DepartmentID = 1 }, new Employee { ID = 5, Name = "F", DepartmentID = 2 }, new Employee { ID = 6, Name = "R", DepartmentID = 2 }, new Employee { ID = 7, Name = "TT", DepartmentID = 1 }, new Employee { ID = 8, Name = "YY", DepartmentID = 1 }, new Employee { ID = 9, Name = "WW", DepartmentID = 2 }, new Employee { ID = 10, Name = "QQ"} }; } } public class Department{ public int ID { get; set; } public string Name { get; set; } public static List<Department> GetAllDepartments(){ return new List<Department>(){ new Department { ID = 1, Name = "IT"}, new Department { ID = 2, Name = "HR"}, new Department { ID = 3, Name = "Contract"}, }; } }
A IT B HR B IT V IT F HR R HR TT IT YY IT WW HR A IT B HR B IT V IT F HR R HR TT IT YY IT WW HR
Das obige ist der detaillierte Inhalt vonWie verwende ich LINQ und Lambda für den Join-Vorgang in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!