Site Overlay

Oracle LEFT JOIN (Svenska)

sammanfattning: i den här handledningen lär du dig hur du använder Oracle LEFT JOIN – klausulen för att fråga data från flera tabeller.

introduktion till Oracle LEFT JOIN clause

följande uttalande illustrerar syntaxen för LEFT JOIN – klausulen när du ansluter till två tabeller T1 och T2:

i den här frågan T1 är den vänstra tabellen och T2 är den högra tabellen.,

frågan jämför varje rad i tabellenT1 med rader i tabellenT2.

om ett par rader från både T1 och T2 – tabellerna uppfyller kopplingspredikatet, kombinerar frågan kolumnvärden från rader i båda tabellerna och innehåller den här raden i resultatuppsättningen.,

om en rad i tabellenT1 inte har någon matchande rad i tabellenT2 kombinerar frågan kolumnvärden från raden i tabellenT1 med ett nollvärde för varje kolumn i den högra tabellen som visas i klausulenSELECT.

med andra ord returnerar en vänster koppling alla rader från den vänstra tabellen och matchande rader från den högra tabellen.,

Oracle LEFT JOIN examples

se följande orders och employees tabeller i provdatabasen:

tabellen lagrar data för försäljningsorderhuvud. Den har kolumnen salesman_id som refererar till kolumnen employee_id I tabellen employees.

kolumnensalesman_id är null-able, vilket innebär att inte alla beställningar har en försäljningsanställd som ansvarar för beställningarna.,

följande uttalande hämtar alla order och anställda data från bådeorders ochemployees tabeller:

följande bild illustrerar resultatet:

resultatet innehåller alla rader från tabellen orders. För raderna i tabellenorders som inte har en matchande rad i tabellenemployees används NULL-värden.,

Oracle LEFT JOIN – join multiple tables

följande uttalande använderLEFT JOIN klausuler för att gå med i tre tabeller:orders,employees ochcustomers:

Oracle left join med användning av klausul

USING anger vilken kolumn som ska testas för jämlikhet när du går med i tabeller., Följande visar syntaxen för LEFT JOIN med USING – klausulen:

i detta uttalande måste kolumnerna i USING – klausulen presenteras i både T1 och T1 tabeller.,

uttalandet som använder USING – klausulen ovan motsvarar följande uttalande som använder ON – klausulen:

följande uttalande visar hur du använder LEFT JOIN med USING statement:

detta uttalande hämtade alla kunder och deras order., För kunder som inte har lagt några beställningar används null för kolumnerna i ordertabellen som visas iSELECT – klausulen, som är order_id, status och order_date.

villkor i On vs WHERE klausul

följande uttalande får order och säljare data i ordern 58.,

Nu om du flyttar villkoret från klausulen WHERE till klausulen ON I klausulen LEFT JOIN:

i det här fallet returnerar frågan alla beställningar, men bara ordern 58 hade säljarens data associerade med den.,

Observera att för den inre kopplingen har villkoret placerat iON samma effekt som det placeras iWHERE – klausulen.

i den här handledningen har du lärt dig hur du använder Oracle LEFT JOIN – klausulen för att hämta data från flera tabeller.

  • var den här handledningen till hjälp?
  • YesNo

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *