Inner Join
Inner join returns only those records or rows that match or exist in both the tables. In other words, it gives a common pattern from both tables.
SQL Syntax
- SELECT column_name(s)
- FROM table1
- INNER JOIN table2 ON table1.column_name = table2.column_name;
Now design the tables and insert the dummy records as below
Now Integrate database tables to your application using Entity framework database first approach
Here CSharpCornerEntities is the Entity framework context name, Now let us see the example using these tables
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace InnerJoin {
- class Program {
- static void Main(string[] args) {
- using(CSharpCornerEntities databaseEntities = new CSharpCornerEntities()) {#
- region InnerJoin with Linq
-
- var linqQuery = from emp in databaseEntities.Employees
- join dep in databaseEntities.Departments
- on emp.ID equals dep.EmpID
- select new {
- emp.ID,
- emp.Name,
- dep.DepartmentName
- };
- Console.WriteLine("\n\t Employee Data with Inner join Using Linq Query");
-
- foreach(var empData in linqQuery) {
- Console.WriteLine("ID : " + empData.ID + ", Name : " + empData.Name + ", Department : " + empData.DepartmentName);
- }#
- endregion# region InnerJoin with Lambda
-
- var LambdaQuery = databaseEntities.Employees.Join(databaseEntities.Departments, e => e.ID, d => d.EmpID, (e, d) => new {
- e.ID, e.Name, d.DepartmentName
- });
- Console.WriteLine("\n\t Employee Data with Inner join Using Linq Lambda");
-
- foreach(var empData in LambdaQuery) {
- Console.WriteLine("ID : " + empData.ID + ", Name : " + empData.Name + ", Department : " + empData.DepartmentName);
- }#
- endregion
- }
- }
- }
- }
Now run your application
I hope it's helpful