-- Query to pivot the data
SELECT
p.Name AS Person,
MAX(CASE WHEN d.IDIndex = 1 THEN d.Topic END) AS [Index 1 Topic],
MAX(CASE WHEN d.IDIndex = 1 THEN d.Rating END) AS [Index 1 Rating],
MAX(CASE WHEN d.IDIndex = 2 THEN d.Topic END) AS [Index 2 Topic],
MAX(CASE WHEN d.IDIndex = 2 THEN d.Rating END) AS [Index 2 Rating]
FROM
Person p
LEFT JOIN
Data d ON p.IDPerson = d.IDPerson
GROUP BY
p.IDPerson, p.Name
ORDER BY
p.IDPerson;