Ist es möglich, dieselbe Tabelle zweimal in einer Select-Abfrage zu verwenden?

8

Hallo Ich habe die folgende Abfrage, und ich frage mich, was es bedeutet:

%Vor%

Wie können Sie die gleiche Tabelle zweimal verwenden?

    
locoboy 12.09.2011, 05:47
quelle

5 Antworten

7

Diese Abfrage erstellt eine Tabelle mit allen möglichen Paaren von Kontakt-IDs.

Wenn Ihre Kontakt-IDs beispielsweise 1, 2 und 3 wären, würden Sie als Ergebnis

erhalten %Vor%     
Ray Toal 12.09.2011, 05:50
quelle
14

Sie verwenden eine einzelne Tabelle zweimal in einer Abfrage, indem Sie ihr zwei Namen geben.

Die Aliase werden oft mit dem Schlüsselwort AS eingeführt. Sie geben normalerweise auch eine Join-Bedingung an (ohne sie erhalten Sie das kartesische Produkt der Tabelle, die mit sich selbst verbunden ist). Sie verwenden vorzugsweise die explizite JOIN-Notation.

%Vor%

Es ist nicht klar, welche Spalten in diesem Beispiel für den Join verwendet werden können. Wir haben keine Informationen, die uns bei der Lösung helfen könnten.

Normalerweise würde es eine andere Tabelle geben, die als Vermittler fungieren könnte, wie eine Nachrichtentabelle:

%Vor%     
Jonathan Leffler 12.09.2011 05:49
quelle
2

Es ist eine einfache Antwort: Verwenden Sie Ihre Abfrage, die im Beispiel aufgeführt ist. Es sollte gut funktionieren. Obwohl dies wahrscheinlich eine schlechte Idee ist, wenn Sie die gleiche Tabelle zweimal verwenden möchten, beachten Sie, dass Sie "diese" Tabellen so verbinden müssen, wie sie unterschiedlich waren:

%Vor%     
gion_13 12.09.2011 05:49
quelle
1

Ja, Sie können dieselbe Tabelle mehrmals in derselben SELECT -Abfrage verwenden.

Beachten Sie, dass Sie nur Tabellenkorrelationsnamen (umgangssprachlich "Aliase") verwenden müssen, wenn die Tabelle mehrmals innerhalb desselben Bereichs angezeigt wird. Die folgende SELECT -Abfrage verwendet z. B. dieselbe Tabelle zweimal, da jedoch jeder in einem bestimmten Bereich liegt (jeweils getrennt durch das Schlüsselwort UNION ), ist kein Tabellenkorrelationsname erforderlich:

%Vor%     
onedaywhen 12.09.2011 08:11
quelle
1

Ja, Sie können dieselbe Tabelle zweimal verwenden, indem Sie der Tabelle verschiedene Aliase zuweisen. Ich denke, dass das Studieren von Self Joins Ihnen helfen wird zu verstehen.

    
Pearl 12.09.2011 06:23
quelle

Tags und Links