I have a table that looks like
Test Reader Result
1 John 1.6
1 Jack 5.2
2 Ursula 2.5
3 Albert 3.0
2 Jack 5
See my comment above. I tried to convert for your table (T1):
WITH TX AS (SELECT TEST, READER, RESULT, ROW_NUMBER() OVER (PARTITION BY TEST ORDER BY READER) AS RN
FROM T1
)
SELECT T0.TEST
, TT1.READER AS READER_1
, TT1.RESULT AS RESULT_1
, TT2.READER AS READER_2
, TT2.RESULT AS RESULT_2
, TT3.READER AS READER_3
, TT3.RESULT AS RESULT_3
FROM (SELECT DISTINCT TEST FROM T1) AS T0
LEFT JOIN TX TT1 ON T0.TEST = TT1.TEST AND TT1.RN=1
LEFT JOIN TX TT2 ON T0.TEST = TT2.TEST AND TT2.RN=2
LEFT JOIN TX TT3 ON T0.TEST = TT3.TEST AND TT3.RN=3;