Reputation: 9380
I have a table in first format given below. I want the output in second format. Help is appreciated. Thanks!
UserID IsManagerFeedback Level
---------------------------------
User 1 FALSE 2
User 2 FALSE 3
User 5 FALSE 2
User 1 TRUE 4
User 3 TRUE 1
User 4 TRUE 3
User 5 TRUE 5
UserID UserFeedback ManagerFeedback
---------------------------------------
User 1 2 4
User 2 3 NA
User 3 NA 1
User 4 NA 3
User 5 2 5
Upvotes: 0
Views: 40
Reputation: 51888
SELECT
UserID,
MAX(CASE WHEN IsManagerFeedback = 'FALSE' THEN Level END) AS UserFeedback,
MAX(CASE WHEN IsManagerFeedback = 'TRUE' THEN Level END) AS ManagerFeedback
FROM
Table1
GROUP BY UserID
See it working live in an sqlfiddle.
UPDATE:
SELECT
Year,
UserID,
MAX(CASE WHEN IsManagerFeedback = 'FALSE' THEN Level END) AS UserFeedback,
MAX(CASE WHEN IsManagerFeedback = 'TRUE' THEN Level END) AS ManagerFeedback
FROM
Table1
GROUP BY Year, UserID
Upvotes: 1