Myslím, že tohle by mohlo být to, co zde doslova chcete:
SELECT DISTINCT
status_id,
(SELECT MAX(user_id) FROM comments c2 WHERE c1.status_id = c2.status_id) user_1,
(SELECT user_id FROM comments c2 WHERE c1.status_id = c2.status_id
ORDER BY user_id LIMIT 1 OFFSET 1) user_2
FROM comments c1
WHERE user_id IN (2,3);
Ukázka
(vaše aktualizace Fiddle)
K nalezení maximálního user_id
můžeme použít korelované poddotazy a maximálně user_id
pro každý status_id
a poté každý z nich vytočte jako dva samostatné sloupce. Pomocí GROUP_CONCAT
Zde může být vhodnější přístup, protože by vám také umožnil snadno umístit libovolný počet uživatelů jako seznam CSV.
Pokud byste také používali MySQL 8+ nebo vyšší, mohli bychom využít funkce analýzy hodnocení, což by bylo také jednodušší.