테이블의 unpivot에 도움이 필요합니다.테이블을 두 번 unpivot하려면 어떻게합니까?
unpivot(Username for Role in ([User_RoleX], [User_RoleY], [User_RoleZ])) as result
그리고 다음을 얻을 :이 같은 유사한 구조 (UserRoles 날짜가 작성되지 않습니다 사실, 널 (NULL))
Object User_RoleX User_RoleY User_RoleZ RoleX_Date RoleY_Date
====== =========== ========== ========== ========== ==========
O1 User 1 User 2 User 3 2014-12-08 2013-12-09
O2 NULL User 1 User 2 NULL 2013-12-09
O3 User 1 NULL User 1 2014-12-08 NULL
내가 다음 명령을 사용하여이 테이블을 피벗 해제에 테이블이 결과 : (나는 Datecolumns 나중에이 테이블에 왔기 때문에,이 얻을 및 UNPIVOT 명령이이 날짜 컬럼 용으로 설계되지 않은)
Object Username Role RoleX_Date RoleY_Date
====== ========== ========== ========== ============
O1 User1 X 2014-12-08 2013-12-09
O1 User2 Y 2014-12-08 2013-12-09
O1 User3 Z 2014-12-08 2013-12-09
O2 User1 Y NULL 2013-12-09
O2 User2 Z NULL 2013-12-09
O3 User1 X 2014-12-08 NULL
O3 User1 Z 2014-12-08 NULL
결과는 다음대로 내가 원하는 무엇
,하지만 난 나는 UNPIVOT 문에서 2 개 날짜 열을 삽입 할 때 UNPIVOT 명령이하지 않는
Object Username Role Date
====== ========== ========== ==========
O1 User1 X 2014-12-08
O1 User2 Y 2013-12-09
O1 User3 Z (NullOrEmpty)
O2 User1 Y 2013-12-09
O2 User2 Z (NullOrEmpty)
O3 User1 X 2014-12-08
O3 User1 Z (NullOrEmpty)
을 (역할 Z는 날짜가없는), 나는라는 오류 메시지를받을 날짜는 열이 unpivot-list에 선언 된 다른 열의 유형과 충돌합니다.
누군가가이 예상 된 경우에 대해 unpivot 명령을 편집하는 방법에 대한 힌트를 줄 수 있습니다.
쉽게 연결된 열을 분할 할 수 있습니다 결과에서
은 ... 당신의 노력을 주셔서 대단히 감사합니다,하지만 내 요구 사항은 그래서 주제를 닫을 수 있습니다 변경되었습니다. – Flopo