假定,上面的表叫TableA下面的表叫TableB
先PIVOT再JOIN的
SELECT a.*,b.permission1,b.permission2
FROM TableA a
JOIN
(SELECT UID,[5] permissions1,[6] permissions2
FROM
(
SELECT * FROM TableB
) T
PIVOT
(MAX(permissions) FOR id IN ([5],[6]))B) b ON A.id = B.uid
先JOIN再PIVOT的
SELECT id,name,pass,permission,[5] permissions1,[6] permissions2
FROM
(
SELECT a.*,b.id,b.permissions FROM TableA a join TableB b ON a.id = b.uid
)T
PIVOT
(
MAX(permissions) FOR id IN ([5],[6])
)Final