MySQL bal JOIN

összefoglaló: ebben a bemutatóban, akkor megtudjuk, MySQL LEFT JOIN záradék, és hogyan kell alkalmazni, hogy a lekérdezés adatokat két vagy több tábla.

Bevezetés a MySQL bal JOIN

a LEFT JOIN lehetővé teszi az adatok lekérdezését két vagy több táblából. A INNER JOIN záradékhoz hasonlóan a LEFT JOIN a SELECT nyilatkozat opcionális záradéka, amely közvetlenül a FROM záradék után jelenik meg.,

tegyük fel, hogy két táblához szeretne csatlakozni t1 és t2.

a következő utasítás aLEFT JOIN záradék használatát mutatja be a két táblázathoz való csatlakozáshoz:

Code language: SQL (Structured Query Language) (sql)

aLEFT JOIN záradék használatakor a bal oldali táblázat és a jobb oldali táblázat fogalmai kerülnek bevezetésre.

a fenti szintaxisban t1 a bal oldali tábla és t2 A jobb oldali táblázat.,

aLEFT JOIN záradék a bal oldali táblázatból kiinduló adatokat választja ki (t1). A bal oldali táblázat minden sorával (t1) egyezik a jobb oldali táblázat minden sorával(t2) a join_conditionalapján.

Ha mindkét táblázat sorai miatt a csatlakozási feltétel értéke TRUE, a LEFT JOIN kombinálja a sorok oszlopait mindkét táblázatból egy új sorba, és tartalmazza ezt az új sort az eredménysorokba.,

ha a sorban a balról a táblázat (t1) nem egyezik meg minden sorban a megfelelő táblázatot(t2), a LEFT JOIN még egyesíti oszlopok sor a két táblázatban egy új sort, majd tartalmazza az új sort az eredmény sor. Azonban a NULL – ot használja a sor minden oszlopához a jobb oldali táblázatból.

más szóval, LEFT JOIN visszaadja az összes sort a bal asztal, függetlenül attól, hogy egy sor a bal asztal egy megfelelő sor a jobb asztal, vagy sem., Ha nincs egyezés, akkor a jobb oldali táblázat sorának oszlopai NULL – t tartalmaznak.

A következő Venn-diagram segít elképzelni, hogy a LEFT JOIN záradék működik:

MySQL BAL CSATLAKOZZON – Venn-Diagram

MySQL BAL CSATLAKOZZ példák

nézzünk néhány példát használja a LEFT JOIN záradék.,

1) A MySQL bal oldali csatlakoztatási záradék használatával csatlakozhat két táblához

lásd a következő táblákat: customers és a mintaadatbázisban.

minden ügyfél nulla vagy több megrendelést kaphat, míg minden megrendelésnek egy ügyfélhez kell tartoznia.,

Ez a lekérdezés használja a LEFT JOIN kikötés, hogy megtalálja az ügyfelek, valamint a parancsot:

Code language: SQL (Structured Query Language) (sql)

Vagylagosan, tudod menteni egy kis gépelést segítségével táblázat álneve:

Code language: SQL (Structured Query Language) (sql)

ebben A példában:

  • A customers a bal oldali asztalnál orders a megfelelő asztalt.
  • a LEFT JOIN záradék visszaadja az összes ügyfelet, beleértve azokat az ügyfeleket is, akiknek nincs megrendelése., Ha az ügyfélnek nincs megrendelése, a orderNumber és status oszlopban szereplő értékek NULL.,

Mert mindkét táblázat vevők, valamint a megrendelések ugyanaz az oszlop neve ( customerNumber) a csatlakozni feltétele az egyenlő operátor, akkor használja a szintaxis HASZNÁLATÁVAL a következőképpen:

Code language: SQL (Structured Query Language) (sql)

A következő kikötések egyenértékű:

Code language: SQL (Structured Query Language) (sql)

A

Code language: SQL (Structured Query Language) (sql)

Ha cserélje ki a LEFT JOIN záradék a INNER JOIN záradék, akkor az csak az ügyfelek, akik legalább egy parancsot.,

2) a MySQL BAL CSATLAKOZZ záradék találni páratlan sorok

A LEFT JOIN záradék nagyon hasznos, ha meg akarod találni a sorok egy táblázatban, hogy nem a megfelelő sorban a másik asztalnál.,”>

találni az ügyfelek, akik nem sorrendben:

Code language: SQL (Structured Query Language) (sql)

3) Használja a MySQL BAL CSATLAKOZZ, hogy csatlakozzon a három táblázatok

a következő három táblázatok employees, customers vagy payments:

Ebben a példában két LEFT JOIN záradékok, hogy csatlakozzon a három táblázatok: employees, customers, a payments.,

Code language: SQL (Structured Query Language) (sql)

Ez a kép a részleges kimenetet mutatja:

hogyan működik.

  • az első LEFT JOINvisszaadja az összes alkalmazottat és ügyfelet, akik minden alkalmazottat képviseltek, vagy NULL ha a munkavállaló nem felelős egyetlen ügyfélért sem.
  • a második LEFT JOINvisszaadja az egyes alkalmazottak által képviselt ügyfelek kifizetéseit, vagy ha az ügyfélnek nincs fizetése.

állapot ahol záradék vs., A

pontban lásd a következő példát.

Code language: SQL (Structured Query Language) (sql)

Ez a példa a LEFT JOIN pontot használta a orders és orderDetailstáblázatok adatainak lekérdezésére. A lekérdezés a 10123sorszám sorrendjét és sorelemeit adja vissza.,

azonban, ha áthelyezi a feltételt a ON div> záradék:

Code language: SQL (Structured Query Language) (sql)

más jelentése lesz.,

ebben az esetben a lekérdezés az összes parancsot, de csak a rend 10123 majd tétel társul, mint az alábbi képen:

Figyeljük meg, hogy a INNER JOIN záradék, az az állapot, hogy a ON záradék egyenértékű a feltétellel, hogy a WHERE záradék.

ebben az oktatóanyagban megtanulta, hogyan kell használni a MySQL LEFT JOIN záradékot, hogy két vagy több táblázatból csatlakozzon az adatokhoz.,

  • hasznos volt ez a bemutató?
  • YesNo

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük