Heim > Datenbank > MySQL-Tutorial > Wie kann ich SQL Server-Tabellen basierend auf Zeilennummer und Kontrollreihenfolge verknüpfen?

Wie kann ich SQL Server-Tabellen basierend auf Zeilennummer und Kontrollreihenfolge verknüpfen?

Susan Sarandon
Freigeben: 2024-12-29 01:54:10
Original
596 Leute haben es durchsucht

How Can I Join SQL Server Tables Based on Row Number and Control Ordering?

Verknüpfen von Tabellen anhand der Zeilennummer in SQL Server

In SQL Server 2008 können Sie mithilfe der Funktion ROW_NUMBER( ) Funktion. Diese Funktion weist jeder Zeile in einer Tabelle eine eindeutige fortlaufende Nummer zu, basierend auf einer optionalen Sortierspezifikation.

Abfrage für die vertikale Reihenfolge verbundener Zeilen:

So verknüpfen Sie Tabellen A und B auf ihre Zeilennummern und behalten Sie die vertikale Reihenfolge der Zeilen bei, verwenden Sie die folgende Abfrage:

SELECT A.val, B.val
FROM (
    SELECT val, ROW_NUMBER() OVER (ORDER BY val) AS row_num
    FROM A
) AS A
JOIN (
    SELECT val, ROW_NUMBER() OVER (ORDER BY val) AS row_num
    FROM B
) AS B
ON A.row_num = B.row_num
ORDER BY A.val, B.val;
Nach dem Login kopieren

Abfrage für Horizontal Zusammengefügte Zeilen anordnen:

Wenn Sie die Zeilen horizontal ohne Sortierung verbinden möchten, ersetzen Sie die ORDER BY-Klauseln durch die PARTITION BY-Klausel:

SELECT A.val, B.val
FROM (
    SELECT val, ROW_NUMBER() OVER (PARTITION BY 1) AS row_num
    FROM A
) AS A
JOIN (
    SELECT val, ROW_NUMBER() OVER (PARTITION BY 1) AS row_num
    FROM B
) AS B
ON A.row_num = B.row_num;
Nach dem Login kopieren

Beispiel:

Unter Verwendung der bereitgestellten Beispieltabellen A und B ergibt die erste Abfrage Folgendes Ausgabe:

RowA Row1
RowB Row2
RowC Row3
RowD Row4
Nach dem Login kopieren

Die zweite Abfrage erzeugt diese Ausgabe, die einen horizontalen Join darstellt:

RowA Row4
RowB Row3
RowC Row2
RowD Row1
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich SQL Server-Tabellen basierend auf Zeilennummer und Kontrollreihenfolge verknüpfen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage