Erfanian
چهارشنبه 09 اردیبهشت 1388, 10:43 صبح
با سلام
فرض كنيد جدولي دارم كه داراي 4 فيلد f1,f2,f3,f4و سه سطر r1,r2,r3 است.
در حالت عادي داريم:
f1 f2 f3 f4
r1
r2
r3
چطور ميتونم با دستورات SQL جاي سطر و ستونو عوض كنم و داشته باشم:
r1 r2 r3
f1
f2
f3
f4
با تشكر:لبخندساده:
goldkavir
چهارشنبه 09 اردیبهشت 1388, 11:17 صبح
دستور PIVOT و UNPIVOT برای اینکاره ، ببین این مثال به دردت میخوره(مال help sql بود):
CREATE TABLE pvt (VendorID int, Emp1 int, Emp2 int,Emp3 int, Emp4 int, Emp5 int)
GO
INSERT INTO pvt VALUES (1,4,3,5,4,4)
INSERT INTO pvt VALUES (2,4,1,5,5,5)
INSERT INTO pvt VALUES (3,4,3,5,4,4)
INSERT INTO pvt VALUES (4,4,2,5,5,4)
INSERT INTO pvt VALUES (5,5,1,5,5,5)
GO
--Unpivot the table.
SELECT VendorID, Employee, Orders
FROM
(SELECT VendorID, Emp1, Emp2, Emp3, Emp4, Emp5
FROM pvt) p
UNPIVOT
(Orders FOR Employee IN
(Emp1, Emp2, Emp3, Emp4, Emp5)
)AS unpvt
GO
Erfanian
چهارشنبه 09 اردیبهشت 1388, 11:53 صبح
ممنون نگاه ميكنم
Erfanian
چهارشنبه 09 اردیبهشت 1388, 13:21 عصر
ظاهرا در SQL 2000دستور unpivot موجود نيست!
reza_Nazem
چهارشنبه 09 اردیبهشت 1388, 23:25 عصر
http://barnamenevis.org/forum/showthread.php?t=148572
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.