Wie implementiere ich einen ZIP JOIN in T-SQL?

10

Sagen wir, ich habe die Tabelle #Foo:

%Vor%

Und Tabelle #Bar:

%Vor%

Ich möchte Tabellenergebnis mit einer einfachen Anweisung erstellen:

%Vor%

Was ich bisher erfunden habe, ist:

%Vor%

Kennst du eine schnellere oder mehr standardmäßige Möglichkeit, ZIP JOIN in T-SQL zu machen?

    
Ryszard Dżegan 17.06.2014, 11:55
quelle

7 Antworten

2

Sie können das einfach ausprobieren.

%Vor%     
IamMOHIT 03.12.2017 08:31
quelle
0

Sie können the CTE loswerden oder Ihre query shorter

erstellen

mit Unterabfrage wie folgt

%Vor%     
TeamDataViz. 17.06.2014 12:15
quelle
0

Reicht das aus? (Zugegebenermaßen kann ich die Frage falsch interpretieren)

%Vor%

Oder wollen Sie im Wesentlichen:

  • Sortiere #Foo nach ID
  • Sortiere #Boo nach Wert
  • Übereinstimmung:
    • "Erste" Zeile von #Foo mit "Erste" Zeile von #Bar
    • "Zweite" Reihe von #Foo mit "Zweite" Reihe von #Bar
    • usw. ...

(Entschuldigung, aber mir ist nicht bekannt, was ein "ZIP JOIN" ist. Ich werde jedoch den Link von @RszardDzegan betrachten.)

    
Steve Rowland 23.01.2015 15:43
quelle
0

Du könntest so etwas ausprobieren:

%Vor%     
Casi 23.11.2015 12:45
quelle
0
%Vor%     
Babak Boroujerdi Far 24.06.2016 22:17
quelle
0

Probieren Sie den folgenden Code aus. Sie müssen nur beide Datentypen in derselben Struktur mit einer Zeilennummer pro Gruppe angeben. Damit können Sie den PIVOT-Operator verwenden, um das erwartete Ergebnis zu erzielen.

%Vor%     
Marcus Belz 18.07.2016 22:41
quelle
-1

Sie können das Erstellen neuer Zeilennummern für #Foo überspringen, da in diesem Fall die Zeilennummern angegeben sind.

Dann wird die Lösung

%Vor%

Diese Lösung wurde getestet und getestet. Es gibt Ihnen alle Werte von #Foo und für jeden einen sortierten Wert von #Bar, wenn es einen gibt.

    
Martijn van der Jagt 05.02.2015 16:27
quelle

Tags und Links