Freigeben über


Darstellungsweise von Verknüpfungen im Abfrage- und Ansicht-Designer

Bei verknüpften Tabellen stellt der Abfrage- und Ansicht-Designer den Join im Diagrammbereich grafisch und im SQL-Bereich unter Verwendung von SQL-Syntax dar.

Diagrammbereich

Im Diagrammbereich wird im Abfrage- und Ansicht-Designer eine Joinlinie zwischen den verknüpften Datenspalten an. Der Abfrage- und Ansicht Designer zeigt eine Joinlinie für jede Joinbedingung an. Die folgende Abbildung zeigt eine Joinlinie zwischen zwei verknüpften Tabellen:

Verknüpfungslinie zwischen den Abfragen "publishers" und "pub_info"

Wenn Tabellen durch mehrere Joinbedingungen miteinander verknüpft sind, zeigt der Abfrage- und Ansicht-Designer wie im folgenden Beispiel mehrere Joinlinien an:

DatabaseProjectDatabaseConnections-Bildschirmabbildung

Wenn die verknüpften Datenspalten nicht angezeigt werden (z. B., weil das die Tabelle oder das Objekt mit Tabellenstruktur darstellende Rechteck minimiert ist oder der Join einen Ausdruck beinhaltet), setzt der Abfrage- und Ansicht-Designer die Joinlinie in die Titelleiste des Rechtecks, das die Tabelle oder das Objekt mit Tabellenstruktur darstellt.

Die Form des Symbols in der Mitte der Joinlinie zeigt an, wie die Tabellen oder Objekte mit Tabellenstruktur verknüpft sind. Wenn die Joinklausel einen anderen Operator als "gleich" (=) verwendet, wird der Operator im Symbol der Joinlinie angezeigt. In der folgenden Tabelle werden die in Joinlinien verwendeten Symbole aufgelistet.

Joinliniensymbol

Beschreibung

QueryJoinLineInnerJoinSymbol-Bildschirmabbildung

Innerer Join (erstellt mit einem Gleichheitszeichen).

QueryJoinLineInnerJoinGreaterThanOperatorSymbol-Bildschirmabbildung

Innerer Join mit dem Operator "größer als".

QueryJoinLinesOuterJoinLeftSymbol-Bildschirmabbildung

Äußerer Join, bei dem sämtliche Zeilen aus der links angezeigten Tabelle aufgenommen werden, auch wenn keine Übereinstimmungen in der verknüpften Tabelle vorliegen.

QueryJoinLineOuterJoinRightSymbol-Bildschirmabbildung

Äußerer Join, bei dem sämtliche Zeilen aus der rechts angezeigten Tabelle aufgenommen werden, auch wenn keine Übereinstimmungen in der verknüpften Tabelle vorliegen.

QueryJoinLineFullOuterSymbol-Bildschirmabbildung

Ein vollständiger äußerer Join, bei dem alle Zeilen aus beiden Tabellen aufgenommen werden, auch wenn keine Übereinstimmungen in der verknüpften Tabelle vorliegen.

HinweisHinweis
Einige Datenbanken, z. B. Oracle, unterstützen keine vollständigen äußeren Joins.

Die Symbole an den Enden der Joinlinie zeigen den Jointyp an. In der folgenden Tabelle werden die Jointypen und die an den Enden der Joinlinien verwendeten Symbole aufgelistet.

Symbole an den Enden der Joinlinien

Jointyp

QueryJoinLine1-to-1Symbol-Bildschirmabbildung

1:1-Join

QueryJoinLine1-to-ManySymbol-Bildschirmabbildung

1:n-Join

QueryJoinLineEndSymbol-Bildschirmabbildung

Der Abfrage- und Ansicht-Designer konnte den Jointyp nicht ermitteln. Dies tritt häufig auf, wenn Sie einen Join manuell erstellt haben.

SQL-Bereich

Ein Join kann in einer SQL-Anweisung auf unterschiedliche Weise ausgedrückt werden. Die genaue Syntax ergibt sich aus der verwendeten Datenbank und daraus, wie Sie den Join definiert haben.

Folgende Syntaxoptionen werden beim Verknüpfen von Tabellen angewendet:

  • JOIN-Qualifizierer in der FROM-Klausel.   Die Schlüsselwörter INNER und OUTER geben den Jointyp an. Diese Syntax entspricht dem Standard bei ANSI 92 SQL.

    Wenn Sie z. B. die Tabellen publishers und pub_info über die Spalte pub_id der beiden Tabellen verknüpfen, kann dies mit folgender SQL-Anweisung ausgedrückt werden:

    SELECT *
    FROM publishers INNER JOIN pub_info ON
       publishers.pub_id = pub_info.pub_id
    

    Wenn Sie einen äußeren Join erstellen, wird LEFT OUTER oder RIGHT OUTER statt INNER verwendet.

  • WHERE-Klausel zum Vergleich der Spalten in beiden Tabellen.   Eine WHERE-Klausel wird angezeigt, wenn die Datenbank die JOIN-Syntax nicht unterstützt (oder wenn Sie sie selbst eingegeben haben). Wenn der Join über die WHERE-Klausel erstellt wird, werden beide Tabellennamen in der FROM-Klausel angegeben.

    Die folgende Anweisung verknüpft z. B. die Tabellen publishers und pub_info.

    SELECT *
    FROM publishers, pub_info
    WHERE  publishers.pub_id = pub_info.pub_id
    

Siehe auch

Referenz

Dialogfeld "Verbinden"

Weitere Ressourcen

Erstellen von Abfragen mit Verknüpfungen