SELECT id_utente, MAX(data_ora_accesso) as maxData, pagina_visitata
FROM test.data_ora_max
WHERE pagina_visitata = 'p1'
GROUP BY id_utente
ORDER BY id DESC;
Stessa cosa per la tua soluzione, non mi pesca gli utenti che hanno come ultima visita la pagina p1, ma pesca anche quella che hanno visitato la p1 non come ultima visita