Megosztás a következőn keresztül:


Külső illesztések létrehozása (Visual Database Tools)

A következőkre vonatkozik:SQL Server

Alapértelmezés szerint a Lekérdezés- és nézettervező eszközök (Visual Database Tools) belső illesztéseket hoznak létre a táblák között. A belső illesztések kiküszöbölik azokat a sorokat, amelyek nem egyeznek a másik táblázat soraival. A külső illesztések azonban visszaadják a záradékban FROM említett táblák vagy nézetek legalább egyik sorát, feltéve, hogy ezek a sorok megfelelnek a keresési feltételeknek WHEREHAVING . Ha olyan adatsorokat szeretne belefoglalni az eredményhalmazba, amelyek nem egyeznek az illesztett táblában, létrehozhat egy külső illesztést.

Külső illesztés létrehozásakor jelentős az a sorrend, amelyben a táblák megjelennek az SQL-utasításban (ahogy az az SQL-panelen is látható). Az első hozzáadott tábla lesz a "bal" tábla, a második pedig a "jobb" tábla. (A táblák diagrampanelen (Visual Database Tools) való megjelenésének tényleges sorrendje nem jelentős.) Ha bal vagy jobb oldali külső illesztést ad meg, arra a sorrendre hivatkozik, amelyben a táblákat hozzáadták a lekérdezéshez, és arra a sorrendre, amelyben azok megjelennek az SQL-utasításban az SQL-ablaktáblában (Visual Database Tools).

Külső illesztés létrehozása

  1. Az illesztés létrehozása automatikusan vagy manuálisan. További részletekért lásd: Táblák automatikus illesztése (Visual Database Tools) vagy táblák manuális csatlakoztatása (Visual Database Tools).

  2. Jelölje ki az illesztési sort a Diagram panelen, majd a Lekérdezéstervező menüjében válassza Az összes sor kijelölése <táblanév>lehetőséget, és válassza ki azt a parancsot, amely tartalmazza azt a táblát, amelynek a további sorait fel szeretné venni.

    • A bal oldali külső illesztés létrehozásához válassza ki az első táblát.
    • A második táblázatot választva jobb külső illesztést hozhat létre.
    • Mindkét táblázatot kiválasztva teljes külső illesztést hozhat létre.

Ha külső illesztést ad meg, a Lekérdezés és a Nézettervező módosítja az illesztési sort, hogy jelezze a külső illesztést.

Emellett a Lekérdezés- és nézettervező módosítja az SQL-panelEN található SQL-utasítást, hogy tükrözze az illesztés típusának változását, ahogyan az az alábbi utasításban is látható:

SELECT employee.job_id,
       employee.emp_id,
       employee.fname,
       employee.minit,
       jobs.job_desc
FROM employee
     LEFT OUTER JOIN jobs
         ON employee.job_id = jobs.job_id;

Mivel a külső illesztések nem egyező sorokat tartalmaznak, az idegenkulcs-korlátozásokat megsértő sorokat is megkeresheti. Ehhez hozzon létre egy külső illesztést, majd adjon hozzá egy keresési feltételt azokhoz a sorokhoz, amelyekben a jobb szélső tábla elsődleges kulcsoszlopa null. Az alábbi külső illesztés például olyan sorokat keres a employee táblában, amelyek nem rendelkeznek megfelelő sorokat tartalmazó jobs táblával:

SELECT employee.emp_id,
       employee.job_id
FROM employee
     LEFT OUTER JOIN jobs
         ON employee.job_id = jobs.job_id
WHERE (jobs.job_id IS NULL);