Wie kann ich in SQL Server Spalten in Zeilen konvertieren?
Spalten-zu-Zeilen-Konvertierung in SQL Server
Das Konvertieren von Datenbankspalten in Zeilen ist eine wichtige Technik bei der Datenanalyse und -reorganisation. Es gibt mehrere Möglichkeiten, diese Konvertierung in SQL Server durchzuführen, jede mit ihren eigenen Vorteilen und Überlegungen.
Methode 1: UNPIVOT-Funktion
Die UNPIVOT-Funktion unterstützt nativ die Konvertierung von Spalten in Zeilen. Die Syntax von UNPIVOT lautet wie folgt:
UNPIVOT (indicatorvalue FOR indicatorname IN (Indicator1, Indicator2, Indicator3, ...)) AS unpiv
Beispiel:
SELECT id, entityId, indicatorname, indicatorvalue FROM yourtable UNPIVOT ( indicatorvalue FOR indicatorname IN (Indicator1, Indicator2, Indicator3) ) unpiv;
Methode 2: Verwenden Sie CROSS APPLY von UNION ALL
CROSS APPLY mit UNION ALL ist eine weitere Möglichkeit, Spalten in Zeilen umzuwandeln. Es kombiniert iterativ Zeilen basierend auf den bereitgestellten Spalten:
SELECT id, entityid, indicatorname, indicatorvalue FROM yourtable CROSS APPLY ( SELECT 'Indicator1', Indicator1 UNION ALL SELECT 'Indicator2', Indicator2 UNION ALL SELECT 'Indicator3', Indicator3 UNION ALL SELECT 'Indicator4', Indicator4 ) c (indicatorname, indicatorvalue);
Methode 3: CROSS APPLY von WERTEN verwenden
Diese Methode verwendet die VALUES-Klausel in CROSS APPLY, um Spaltennamen und -werte anzugeben:
SELECT id, entityid, indicatorname, indicatorvalue FROM yourtable CROSS APPLY ( VALUES ('Indicator1', Indicator1), ('Indicator2', Indicator2), ('Indicator3', Indicator3), ('Indicator4', Indicator4) ) c (indicatorname, indicatorvalue);
Methode 4: Dynamisches SQL
Für Szenarien, in denen Sie eine große Anzahl von Spalten abwickeln müssen, kann Dynamic SQL diesen Prozess automatisieren:
DECLARE @colsUnpivot AS NVARCHAR(MAX), @query AS NVARCHAR(MAX) SELECT @colsUnpivot = STUFF(( SELECT ',' + QUOTENAME(C.column_name) FROM INFORMATION_SCHEMA.COLUMNS AS C WHERE C.table_name = 'yourtable' AND C.column_name LIKE 'Indicator%' FOR XML PATH('') ), 1, 1, '') SET @query = 'SELECT id, entityId, indicatorname, indicatorvalue FROM yourtable UNPIVOT ( indicatorvalue FOR indicatorname IN (' + @colsUnpivot + ') ) u' EXEC sp_executesql @query;
Sie können Spalten-zu-Zeilen-Konvertierungen in SQL Server effizient durchführen, indem Sie die für Ihr spezifisches Szenario am besten geeignete Methode auswählen.
Das obige ist der detaillierte Inhalt vonWie kann ich in SQL Server Spalten in Zeilen konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Reduzieren Sie die Verwendung des MySQL -Speichers im Docker

Wie verändern Sie eine Tabelle in MySQL mit der Änderungstabelleanweisung?

So lösen Sie das Problem der MySQL können die gemeinsame Bibliothek nicht öffnen

Führen Sie MySQL in Linux aus (mit/ohne Podman -Container mit Phpmyadmin)

Ausführen mehrerer MySQL-Versionen auf macOS: Eine Schritt-für-Schritt-Anleitung

Was sind einige beliebte MySQL -GUI -Tools (z. B. MySQL Workbench, PhpMyAdmin)?

Wie konfiguriere ich die SSL/TLS -Verschlüsselung für MySQL -Verbindungen?
