SQL Server 2008 데이터베이스에 3 개의 테이블이 있습니다. 첫 번째 테이블은 두 번째는 특권과 마지막 링크 처음 두 테이블을 포함하고, 사용자 이름을 포함SQL 쿼리에서 테이블 반환
USERS를 (ID
정수, NAME
VARCHAR (20));
privs (ID
정수, NAME
varchar (50));
USERS_PRIVS (USERID
정수, PRIVID
정수);
, 사용자 테이블이 다음
1, Adam
2, Benjamin
3, Chris
privs 및 테이블이 있습니다
1, Add Invoice
2, Edit Invoice
3, Delete Invoice
USERS_PRIVS 테이블이 있습니다 내가 찾고 있어요
1, 1
1, 2
1, 3
2, 1
2, 2
3, 1
을 방법은 다음과 같은 것을 반환하는 SQL 쿼리를 생성합니다 :
Add Invoice Edit Invoice Delete Invoice
Adam Y Y Y
Benjamin Y Y N
Chris Y N N
피벗 기능을 사용하면 가능합니까?
예에서 XML 물건을 빌려. 이 사이트와 웹 주위에는'PIVOT'의 예가 많이 있습니다. 너 뭐 해봤 니? –
@JonofAllTrades : 다양한 피벗 제안을 시도했습니다. 내가 겪고있는 문제는 PRIVS 테이블에서 열 머리글을 얻는 것이고 아래의 모든 제안에 따라 SQL에서 하드 코딩하는 것입니다. – Caynadian