sql >> Databasteknik >  >> RDS >> Sqlserver

Transponera en uppsättning rader som kolumner i SQL Server 2000

Exemplet på http://jdixon.dotnetdevelopersjournal.com/pivot_table_data_in_sql_server_2000_and_2005.htm fungerar bara om du i förväg vet vad radvärdena kan vara. Låt oss till exempel säga att du har en enhet med anpassade attribut och de anpassade attributen implementeras som rader i en underordnad tabell, där den underordnade tabellen i grunden är variabel/värdepar och dessa variabel/värdepar är konfigurerbara.

color red
size  big
city  Chicago

Jag ska beskriva en teknik som fungerar. Jag har använt det. Jag marknadsför det INTE, men det fungerar.

För att pivotera data där du inte vet vad värdena kan vara i förväg, skapa en temporär tabell i farten utan kolumner. Använd sedan en markör för att gå igenom dina rader och utfärda en dynamiskt byggd "ändringstabell" för varje variabel, så att din temporära tabell i slutändan har kolumnerna, färg, storlek, stad.

Sedan infogar du en rad i din temporära tabell, uppdaterar den via en annan markör genom variabeln värdepar och väljer den, vanligtvis sammanfogad med dess överordnade enhet, vilket i själva verket får det att verka som att de anpassade variabel/värdeparen var som inbyggda- i kolumner i den ursprungliga överordnade enheten.



  1. Oracle - Vilken TNS Names-fil använder jag?

  2. COS() Exempel i SQL Server

  3. PostgreSQL:Inaktivera anslutningar tillfälligt

  4. Hur MID() fungerar i MariaDB