Transponieren von Zeilen zu Spalten-und join-Tabelle
Hallo ich habe zwei Tabellen, Attribut, Instanz
Attribut-Tabelle
id | key_info | value_info
2 | amount | 1009
2 | currency | USD
2 | Level | Level 5
3 | amount | 2017
3 | currency | CAD
Instanz Tabelle
id | status
2 | Pending
3 | Approved
I want to join zwei Tabellen wie diese-
Neue Tabelle
id | amount | currrency | level | status
2 | 1001 | USD | Level 5 | Pending
3 | 2017 | CAD | | Approved
Alle Felder, die in dem Attribut und Instanz sind optional, mit Ausnahme id.
Die RBDMS ist das für Sie? MySql? Sql-Server? Jede Plattform implementiert pivot-Funktionalität anders.
Es ist für den SQL server 2008. Die obige Abfrage funktioniert.Danke.
Es ist für den SQL server 2008. Die obige Abfrage funktioniert.Danke.
InformationsquelleAutor Sujithk109 | 2013-03-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sql Fiddle
InformationsquelleAutor Michael Fredrickson
Ab SQL-Server 2005, der
PIVOT
- Funktion kann diese Konvertierung durchführen von Zeilen zu Spalten:Sehen SQL Fiddle mit Demo.
Wenn Sie eine unbekannte Anzahl von
key_values
dann können Sie dynamisches SQL verwenden:Sehen SQL Fiddle mit Demo. Beide geben das Ergebnis:
InformationsquelleAutor Taryn