Freigeben über


Verknüpfungsvorgänge (Visual Basic)

Eine Verknüpfung von zwei Datenquellen ist die Zuordnung von Objekten in einer Datenquelle mit Objekten, die ein gemeinsames Attribut in einer anderen Datenquelle gemeinsam nutzen.

Beim Verknüpfen handelt es sich um einen wichtigen Vorgang in Abfragen, die auf Datenquellen abzielen, deren Beziehungen zueinander nicht direkt befolgt werden können. Bei der objektorientierten Programmierung kann dies eine Korrelation zwischen Objekten bedeuten, die nicht modelliert sind, z. B. die Rückwärtsrichtung einer unidirektionale Beziehung. Ein Beispiel für eine unidirektionale Beziehung ist eine Customer-Klasse mit einer Eigenschaft vom Typ "City", aber die City-Klasse verfügt nicht über eine Eigenschaft, die eine Sammlung von Customer-Objekten ist. Wenn Sie eine Liste von City-Objekten haben und alle Kunden in jeder Stadt finden möchten, können Sie einen Verknüpfungsvorgang verwenden, um sie zu finden.

Die im LINQ-Framework bereitgestellten Verknüpfungsmethoden sind Join und GroupJoin. Diese Methoden führen Gleichheitsverknüpfungen oder Verknüpfungen durch, bei denen zwei Datenquellen auf Basis der Gleichheit ihrer Schlüssel verglichen werden. (Im Vergleich unterstützt Transact-SQL Join-Operatoren außer 'gleich', z.B. den Operator 'kleiner als'.) In relationalen Datenbanken implementiert Join einen inneren Join, eine Art von Verknüpfung, bei der nur die Objekte zurückgegeben werden, die eine Übereinstimmung im anderen Datensatz aufweisen. Für die GroupJoin-Methode hat bei relationalen Datenbanken kein direktes Äquivalent. Sie implementieren eine übergeordnete Menge innerer und linker äußerer Joins. Eine linke äußere Verknüpfung ist eine Verknüpfung, die jedes Element der ersten (linken) Datenquelle zurückgibt, auch wenn es keine korrelierten Elemente in der anderen Datenquelle enthält.

Die folgende Abbildung zeigt eine konzeptionelle Ansicht von zwei Sätzen und die Elemente innerhalb dieser Sätze, die entweder in einer inneren Verknüpfung oder einer linken äußeren Verknüpfung enthalten sind.

Zwei überlappende Kreise, die das Innere/Äußere zeigen.

Methodik

Methodenname BESCHREIBUNG Syntax des Visual Basic-Abfrageausdrucks Mehr Informationen
Beitreten Verknüpft zwei Sequenzen auf Basis von Schlüsselauswahlfunktionen und extrahiert Wertepaare. From x In …, y In … Where x.a = y.a

-oder-

Join … [As …]In … On …
Enumerable.Join

Queryable.Join
Gruppenbeitritt Verknüpft zwei Sequenzen auf Basis von Schlüsselauswahlfunktionen und gruppiert die sich ergebenden Übereinstimmungen für die einzelnen Elemente. Group Join … In … On … Enumerable.GroupJoin

Queryable.GroupJoin

Siehe auch