logo

SQL LEFT JOIN

SQL LEFT JOIN kommando returnerer alle poster fra venstre tabel og matchende poster fra højre tabel.

java-strengen er tom

LEFT JOIN i SQL

LEFT JOIN i SQL bruges til at kombinere rækker fra to eller flere tabeller, baseret på en relateret kolonne mellem dem. Det returnerer alle rækker fra den venstre tabel og matchende poster fra den højre tabel.



Hvis der ikke er nogen matchende post i den højre tabel, vil posterne fra den højre tabel indeholde NULL-værdier .

Det betyder, at hvis en bestemt række er til stede i den venstre tabel, men ikke i den højre, vil resultatet inkludere denne række, men med en NULL-værdi i hver kolonne fra højre. Hvis en post fra den højre tabel ikke er til venstre, vil den ikke blive inkluderet i resultatet.

VENSTRE JOIN Venn Diagram

Dette VENN-diagram viser, hvordan en LEFT JOIN fungerer.



Venstre Deltag

VENSTRE JOIN

Syntaks

LEFT JOIN-syntaksen er:

VÆLG kolonnenavn(e)
FRA tabel A
VENSTRE JOIN tabelB PÅ tabelA.kolonnenavn = tabelB.kolonnenavn;



Eksempel på SQL LEFT JOIN

Lad os se på et eksempel på LEFT JOIN i SQL for at forstå det bedre.

Lad os overveje to tabeller Emp, der indeholder detaljer om den medarbejder, der arbejder i den pågældende afdeling, og afdelingstabel, der indeholder detaljerne for afdelingen

Medarbejder tabel

Forespørgsel:

manuel test
CREATE TABLE Emp (  EmpID INT PRIMARY KEY,  Name VARCHAR(50),  Country VARCHAR(50),  Age INT,  Salary INT,  department_id INT );  INSERT INTO Emp (EmpID, Name, Country, Age, Salary, department_id) VALUES (1, 'Shubham', 'India', 23, 30000, 101),  (2, 'Aman', 'Australia', 21, 45000, 102),  (3, 'Naveen', 'Sri Lanka', 24, 40000, 103),  (4, 'Aditya', 'Austria', 21, 35000, 104),  (5, 'Nishant', 'Spain', 22, 25000, 101);>

Produktion:

medarbejderbord

Medarbejder tabel

Afdelingstabel

Forespørgsel:

  CREATE TABLE department (  department_id INT PRIMARY KEY,  department_name VARCHAR(50),  department_head VARCHAR(50),  location VARCHAR(50) );  INSERT INTO department (department_id, department_name, department_head, location)  VALUES (101, 'Sales', 'Sarah', 'New York'),  (102, 'Marketing', 'Jay', 'London'),  (103, 'Finance', 'Lavish', 'San Francisco'),  (104, 'Engineering', 'Kabir', 'Bangalore'); Select * from department;>

Produktion:

wumpus verden
afdelingsbord

Afdelingstabel

LEFT JOIN i SQL Eksempel

For at udføre left-join på disse to tabeller vil vi bruge følgende SQL-forespørgsel:

  SELECT   Emp.EmpID, Emp.Name, department. department_name, department.department_head,  department.location    FROM   Emp   LEFT JOIN   department   ON   Emp.department_id = department.department_id;>

Produktion:

venstre join i sql eksempel output

LEFT JOIN i SQL Eksempel Output

Som venstre join giver de matchende rækker og de rækker, der er til stede i den venstre tabel, men ikke i den højre tabel. Her i dette eksempel ser vi, at de medarbejdere, der ikke arbejder i en bestemt afdeling, dvs. har dept ingen værdier som [NULL], indeholder [NULL] værdier af afd. navn og placering efter den venstre join.

SQL LEFT JOIN med WHERE-klausuleksempel

I dette eksempel tilføjer vi en WHERE-klausul der angiver kun at returnere resultater, hvor placeringskolonnen i afdelingstabellen er lig med 'Bangalore'. Dette vil filtrere resultaterne til kun at vise medarbejdere, der tilhører en afdeling beliggende i Bangalore, og afdelinger, der ikke har nogen ansatte, vil ikke blive returneret i resultaterne.

Forespørgsel:

hvad er gb
  SELECT   e.EmpID, e.Name, d.department_name,  d.department_head, d.location    FROM   Emp e   LEFT JOIN   department d   ON   e.department_id  = d.department_id   WHERE   d.location = 'Bangalore';>

Produktion:

sql left join with where klausul eksempel output

SQL LEFT JOIN med WHERE-klausuleksempel

SQL LEFT JOIN som aliaseksempel

I denne forespørgsel bruger vi aliaser e for Emp-tabellen og d for afdelingstabellen. Det VÆLG sætning refererer til disse aliaser for hver kolonne, hvilket gør forespørgslen nemmere at læse og skrive. Aliaser forenkler kode og forbedrer læsbarheden, især med lange eller komplekse tabelnavne.

Forespørgsel:

  SELECT   e.EmpID, e.Name, d.department_name,  d.department_head, d.location    FROM   Emp e   LEFT JOIN   department d   ON   e.department_id = d.department_id;>

Produktion:

sql venstre join som aliaser eksempel output

SQL LEFT JOIN som aliaseksempel output

Vigtige punkter om SQL LEFT JOIN

  • LEFT JOIN returnerer alle poster fra venstre tabel og matchende poster fra højre tabel.
  • NULL-værdier er inkluderet for umatchede poster på højre side.
  • LEFT JOIN bruges til at kombinere data baseret på relaterede kolonner.
  • Aliaser kan forenkle forespørgsler med lange tabelnavne.
  • LEFT JOIN med WHERE-sætning bruges til at filtrere poster.