összefoglaló: ebben az oktatóanyagban megtudhatja az SQL Server LEFT JOIN záradékot, valamint azt, hogyan kell használni az adatok lekérdezésére több táblából.
Bevezetés Az SQL Server bal oldali csatlakozási záradékba
a LEFT JOIN záradék lehetővé teszi az adatok lekérdezését több táblából. Az összes sort a bal asztalról, a megfelelő sorokat pedig a jobb asztalról adja vissza. Ha a jobb oldali táblázatban nem található megfelelő sor, akkorNULL használható.,
az alábbiak szemléltetik, hogyan lehet csatlakozni két T1 és T2 táblához a LEFT JOIN záradék használatával:
Code language: SQL (Structured Query Language) (sql)
ebben a szintaxisban a T1 és a T2 a bal és a jobb oldali táblázatok.
a T1 táblázat minden sorához a lekérdezés összehasonlítja a T2 táblázat összes sorával. Ha egy sorpár miatt a join predikátum értéke TRUE, akkor az ezekből a sorokból származó oszlopértékek egy új sort alkotnak, amely ezután szerepel az eredménykészletben.,
Ha a bal oldali tábla (T1) sorában nincs megfelelő sor a T2 táblából, akkor a lekérdezés a bal oldali táblázat oszlopértékeit a NULL oszlopértékekkel kombinálja a jobb oldali táblázat minden oszlopértékéhez.
röviden, aLEFT JOIN záradék a bal oldali táblázat (T1) összes sorát, valamint a megfelelő sorokat vagyNULL értékeket adja vissza a jobb oldali táblázatból (T2).
a következő két T1(1, 2, 3) és T2(A, B, C) táblázat LEFT JOIN – ját szemlélteti., A LEFT JOIN A T1 táblázat sorai a T2 táblázat soraival egyeznek a mintákkal:
ezen az ábrán a T2 táblázat sorai nem egyeznek a T1 táblázat 1.sora tehát null. A T1 táblázat 2.és 3. sorai egyeznek a T2 táblázat A és B soraival.,
SQL Server LEFT JOIN example
lásd a következő products és order_items táblázatok:
minden értékesítési tétel tartalmaz egy terméket. A order_items és a products táblák közötti kapcsolat a product_id oszlop.,
A következő nyilatkozatot használja a LEFT JOIN záradék lekérdezés adatai a products vagy order_items táblázatok:
tisztán látni az eredményt, állítsa be, egy listát NULL a order_id oszlop azt jelzi, hogy a megfelelő termékeket nem értékesített, hogy minden ügyfél még.
lehetőség van a WHERE záradék használatára az eredménykészlet korlátozására., A következő lekérdezés azokat a termékeket adja vissza, amelyek nem jelennek meg semmilyen értékesítési sorrendben:
mint mindig, az SQL Server feldolgozza a WHERE záradékot a
záradék.,
The following example shows how to join three tables: production.products, sales.orders, and sales.order_items using the LEFT JOIN clauses:
Here is the output:
SQL Server LEFT JOIN: conditions in ON vs., HOL záradék
A következő lekérdezés talál meg a termékek tartoznak a megrendelés azonosítóját 100:
a mozgás a feltétellel order_id = 100, hogy a ON záradék:
A lekérdezés összes terméket, de csak a megrendelés azonosítója 100 a kapcsolódó termék információk.,
vegye figyelembe, hogy aINNER JOIN záradék esetében aON záradék feltétele funkcionálisan egyenértékű, ha aWHERE záradékba kerül.
ebben a bemutatóban megtanulta, hogyan kell használni az SQL Server LEFT JOIN záradékot az adatok több kapcsolódó táblázatból történő letöltéséhez.
















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