내 응용 프로그램에 대한 보고서로 보안 매트릭스를 생성하려고합니다.SQL select 문에서 쿼리를 기반으로 열을 생성 할 수 있습니까?
이 질문을 보는 것은 거의 정확하게 내가 원하는 것입니다.
SQL Server: Examples of PIVOTing String data
나는 내 솔루션에 적응하기 위해 솔루션
SELECT Action,
MAX(CASE data WHEN 'View' THEN data ELSE '' END) ViewCol,
MAX(CASE data WHEN 'Edit' THEN data ELSE '' END) EditCol
FROM t
GROUP BY Action
을 변경했습니다.
SELECT RefRoleId ,
MAX(CASE Permission WHEN 'AdministerErrors' THEN 'X' ELSE '' END) 'Administer Errors'
FROM RolePermission
GROUP BY RefRoleId
내가 볼 수있는 문제는 내가 가진 권한을 정확히 알고 쿼리의 열로 하드 코딩해야한다는 것입니다. 모든 단일 허가 오류 '
를 관리 나는 새로운
MAX ('AdministerErrors 'THEN'X 'ELSE' 'END 때 CASE 권한을)'해야합니다.
쿼리를 통해 SQL 쿼리에 표시 할 열을 추가 할 수있는 방법이 있습니까?
가능한 중복 [SQL Server 동적 PIVOT 쿼리?] (http://stackoverflow.com/questions/10404348/sql-server-dynamic-pivot-query) –