logo

Forskellen mellem Left Join og Right Join

MySQL har hovedsageligt to slags joins ved navn LEFT JOIN og RIGHT JOIN. Den største forskel mellem disse sammenføjninger er medtagelse af ikke-matchede rækker . LEFT JOIN inkluderer alle poster fra venstre side og matchede rækker fra højre tabel, hvorimod RIGHT JOIN returnerer alle rækker fra højre side og umatchede rækker fra venstre tabel. I dette afsnit skal vi kende de populære forskelle mellem LEFT og RIGHT join. Før vi udforsker sammenligningen, lad os først forstå JOIN, LEFT JOIN og RIGHT JOIN-klausulen i MySQL .

Hvad er JOIN-klausul?

EN tilslutte bruges til at forespørge data fra flere tabeller og returnerer det kombinerede resultat fra to eller flere tabeller gennem en betingelse. Betingelsen i join-udtrykket angiver, hvordan kolonner matches mellem de angivne tabeller.

Hvad er LEFT JOIN-klausulen?

Left Join-sætningen forbinder to eller flere tabeller og returnerer alle rækker fra den venstre tabel og matchede poster fra den højre tabel eller returnerer null, hvis den ikke finder nogen matchende post. Det er også kendt som Venstre Ydre Sammenføjning . Så Ydre er det valgfri nøgleord, der skal bruges med Left Join.

Vi kan forstå det med følgende visuelle repræsentation:

Venstre Join vs Right Join

For at læse mere information om LEFT join, Klik her .

Hvad er RIGHT JOIN-klausulen?

Right Join-sætningen forbinder to eller flere tabeller og returnerer alle rækker fra den højre tabel, og kun de resultater fra den anden tabel, der opfyldte den angivne join-betingelse. Hvis den finder umatchede poster fra venstre sidetabel, returnerer den Null-værdi. Det er også kendt som Højre ydre samling . Så Outer er den valgfri klausul, der skal bruges med Right Join.

Vi kan forstå det med følgende visuel repræsentation .

Venstre Join vs Right Join

For at læse mere information om RIGHT JOIN, klik her.

Syntaks for LEFT JOIN-klausul

Følgende er den generelle syntaks for LEFT JOIN:

 SELECT column_list FROM table_name1 LEFT JOIN table_name2 ON column_name1 = column_name2 WHERE join_condition 

Følgende er den generelle syntaks for LEFT OUTER JOIN:

 SELECT column_list FROM table_name1 LEFT OUTER JOIN table_name2 ON column_name1 = column_name2 WHERE join_condition 

Syntaks for RIGHT JOIN-klausul

Følgende er den generelle syntaks for RIGHT JOIN:

 SELECT column_list FROM table_name1 RIGHT JOIN table_name2 ON column_name1 = column_name2 WHERE join_condition 

Følgende er den generelle syntaks for RIGHT OUTER JOIN:

 SELECT column_list FROM table_name1 RIGHT OUTER JOIN table_name2 ON column_name1 = column_name2 WHERE join_condition 

LEFT JOIN vs. HØJRE JOIN

Følgende sammenligningstabel forklarer deres vigtigste forskelle på en hurtig måde:

VENSTRE JOIN HØJRE JOIN
Den forbinder to eller flere tabeller, returnerer alle poster fra den venstre tabel og matchende rækker fra den højre tabel. Det bruges til at forbinde to eller flere tabeller, returnerer alle poster fra den højre tabel og matchende rækker fra den venstre tabel.
Resultatsættet vil indeholde null-værdi, hvis der ikke er en matchende række i højre sidetabel. Resultatsættet vil indeholde nulværdi, hvis der ikke er en matchende række i venstre sidetabel.
Det er også kendt som LEFT OUTER JOIN. Det kaldes også RIGHT OUTER JOIN.

Eksempel

Lad os forstå forskellene mellem begge sammenføjninger gennem eksempler. Antag, at vi har en tabel ved navn ' kunde 'og' Ordre:% s ', der indeholder følgende data:

Tabel: kunde

Venstre Join vs Right Join

Tabel: ordrer

Venstre Join vs Right Join

LEFT JOIN Eksempel

Følgende SQL-sætning returnerer de matchende poster fra begge tabeller ved hjælp af LEFT JOIN-forespørgslen:

 SELECT cust_id, cust_name, order_num, order_date FROM customer LEFT JOIN orders ON customer.cust_id = orders.order_id WHERE order_date <'2020-04-30'; < pre> <p>After successful execution of the query, we will get the output as follows:</p> <img src="//techcodeview.com/img/mysql-tutorial/37/difference-between-left-join-5.webp" alt="Left Join vs Right Join"> <p> <strong>RIGHT JOIN Example</strong> </p> <p>Following SQL statement returns the matching records from both tables using the RIGHT JOIN query:</p> <pre> SELECT cust_id, cust_name, occupation, order_num, order_date FROM customer RIGHT JOIN orders ON cust_id = order_id ORDER BY order_date; </pre> <p>After successful execution of the query, we will get the output as follows:</p> <img src="//techcodeview.com/img/mysql-tutorial/37/difference-between-left-join-6.webp" alt="Left Join vs Right Join"> <hr></'2020-04-30';>

Efter vellykket udførelse af forespørgslen får vi output som følger:

Venstre Join vs Right Join