Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL Unpivot множество колони Данни

По-лесен начин за отмяна на завъртането на данните би бил използването на CROSS APPLY за отмяна на завъртането на колоните по двойки:

select vendorid, orders, orders1
from pvt1
cross apply
(
  select emp1, sa union all
  select emp2, sa1
) c (orders, orders1);

Вижте SQL Fiddle с демонстрация . Или можете да използвате CROSS APPLY с клаузата VALUES, ако не искате да използвате UNION ALL:

select vendorid, orders, orders1
from pvt1
cross apply
(
  values 
    (emp1, sa),
    (emp2, sa1)
) c (orders, orders1);

Вижте SQL Fiddle с демонстрация



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. изчисляване на фискалната година в изявление за избор на sql?

  2. Как да използвате SignalR в уеб ферма, като използвате Sql сървър като задна платка

  3. комуникирайте MATLAB SQL Server

  4. SQL Server 2005 ROW_NUMBER() без ORDER BY

  5. Завъртане на няколко колони въз основа на една колона в SQL Server