Ich habe die folgende Abfrage mit seinem Ergebnis:Konvertieren von Zeilen in konstante Spalten in SQL Server?
SELECT * FROM dbo.DeviceView AS dv
WHERE DeviceId = 5
Ergebnis:
Id Name AttachId ColorId Date
--- ------- ---------- ------- -------
5 Apple iPhone 5s A1533 NULL 1 2013-09-10 00:00:00.000
5 Apple iPhone 5s A1533 NULL 8 2013-09-10 00:00:00.000
5 Apple iPhone 5s A1533 NULL 19 2013-09-10 00:00:00.000
ColorID ist innerhalb diffrent Werte und es kann mehr oder weniger als drei Werte sein
Ich möchte konvertieren ColorID zu 3 Spalten, wie der erste Wert in ColorId1
und der zweite Wert in ColorId2
und der dritte Wert in .
zB:
Id Name AttachId ColorId1 ColorId2 ColorId3 Date
--- ------- ---------- ---------- ---------- ---------- -------
5 Apple iPhone 5s A1533 NULL 1 8 19 2013-09-10 00:00:00.000
Wie kann ich es auf das folgende Format konvertieren?
bearbeiten:
Alle anderen Felder außer ColorId
sind die gleichen.
Erstens: Sind alle anderen Spalten von der ID abhängig? d. ,, Könnten Sie Name = 'SamSung Galaxy 4' in der zweiten Reihe haben? oder nicht? Gleiches mit 'AttachId' und' Date'? –
Wenn diese Spalten von ID abhängig sind, dann hat Ihre Datenbank Normalisierungsprobleme., Die Sie zuerst lösen sollten –
@CharlesBretana Siehe Abschnitt bearbeiten von Post. –