ich folgende Daten in SQL haben (nvarchar- nvarchar)SQL mehrere Zeilen mit derselben Zeile Namen Spalte
Name: Test Person
Phone Number: 290831283
Fax Number: 192389182
Email Address: [email protected]
Name: Abacus Testing
Phone Number: 901823908
Fax Number: 9213989182
Email Address: [email protected]
Wie kann ich diese Daten formatiert sein:
[Name] [Phone Number] [Fax Number] [Email Address]
Test Person 290831283 192389182 [email protected]
Abacus Testing 901823908 9213989182 [email protected]
Also im Grunde Einstellung die Zeilen in passende Spalte
Ich hatte gehofft, eine Pivot-Tabelle zu verwenden, aber ich bekomme nur die erste Zeile aufgrund der Aggregation.
SELECT [Name], [Phone Number], [Fax Number], [Email Address]
FROM
(
SELECT
ColumnName,
Data
FROM
TheData
) SRC
PIVOT
(
MAX(Data)
FOR ColumnName IN ([Name], [Phone Number], [Fax Number], [Email Address])
) PIV
Ich würde keine CURSOR-Methoden, keine Alternativen bevorzugen?
- Edit: hat weitere Felder für die Verwendung
Die anderen Felder Label-ID für jeden Eintrag zur Verfügung stehen. d. h. Name = 1, Telefonnummer = 2, Faxnummer = 3, Emailadresse = 4
Die gemeinsame ID für jeden der 4 Einträge ist ebenfalls verfügbar. d. h. die ersten 4 Einträge haben die ID 1001, die zweiten 4 Einträge die ID 1002
Das Problem ist Ihr Datenmodell. Es scheint keine Spalte zu geben, in der die ersten vier Zeilen zur selben Entität gehören und die zweite zu einer anderen Entität. Sie * können sich nicht auf irgendeine Reihenfolge verlassen, in der sie gerade zurückgegeben werden. –
zeigen Sie, wie die Daten in Ihrer Tabelle aussehen. kein Text. –
Wenn Sie über ein Feld verfügen, das die Reihenfolge Ihrer Daten angibt, können Sie basierend darauf eine gemeinsame Nummer für Zeilen in jeder der Gruppen abrufen und diese im Pivot verwenden. –