We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
SELECT
COALESCE(MAX(Doctor), 'NULL') AS Doctor,
COALESCE(MAX(Professor), 'NULL') AS Professor,
COALESCE(MAX(Singer), 'NULL') AS Singer,
COALESCE(MAX(Actor), 'NULL') AS Actor
FROM (
SELECT
CASE WHEN Occupation = 'Doctor' THEN Name END AS Doctor,
CASE WHEN Occupation = 'Professor' THEN Name END AS Professor,
CASE WHEN Occupation = 'Singer' THEN Name END AS Singer,
CASE WHEN Occupation = 'Actor' THEN Name END AS Actor,
ROW_NUMBER() OVER (PARTITION BY Occupation ORDER BY Name) AS rn
FROM
OCCUPATIONS
) AS temp
GROUP BY
rn
ORDER BY
rn;
Cookie support is required to access HackerRank
Seems like cookies are disabled on this browser, please enable them to open this website
Occupations
You are viewing a single comment's thread. Return to all comments →
Finally figured out
SELECT COALESCE(MAX(Doctor), 'NULL') AS Doctor, COALESCE(MAX(Professor), 'NULL') AS Professor, COALESCE(MAX(Singer), 'NULL') AS Singer, COALESCE(MAX(Actor), 'NULL') AS Actor FROM ( SELECT CASE WHEN Occupation = 'Doctor' THEN Name END AS Doctor, CASE WHEN Occupation = 'Professor' THEN Name END AS Professor, CASE WHEN Occupation = 'Singer' THEN Name END AS Singer, CASE WHEN Occupation = 'Actor' THEN Name END AS Actor, ROW_NUMBER() OVER (PARTITION BY Occupation ORDER BY Name) AS rn FROM OCCUPATIONS ) AS temp GROUP BY rn ORDER BY rn;