Sobes.tech
Junior — Middle

Mi történik, ha két tábla között LEFT JOIN-t hajtunk végre, például Euler-körök segítségével az összekapcsolás illusztrálására?

sobes.tech MI

Válasz az MI-től

LEFT JOIN visszaadja a bal oldali tábla összes sorát és a jobb oldali tábla megfelelő sorait. Ha a jobb oldali táblában nincs egyező sor a bal oldalihoz, akkor az eredményben NULL értékek szerepelnek.

Euler-körök ábrázolása:

  • Képzelj el két kört, ahol a bal oldali a bal tábla, a jobb oldali pedig a jobb tábla.
  • A LEFT JOIN az egész bal kör és a jobb oldali körrel való metszet.
  • Más szóval, a bal kör összes eleme szerepel az eredményben, a jobb kör elemei csak azok, amelyek metszik a bal oldali kört.

SQL példa:

SELECT * FROM A LEFT JOIN B ON A.id = B.a_id;

Ha az A táblában vannak olyan rekordok, amelyekhez nincs megfeleltetés a B-ben, akkor is megjelennek az eredményben, de a B-ből származó mezők NULL értékűek lesznek.