DISTINCT gilt für die gesamte Datenzeile. Da die ID in jeder Zeile anders ist, erhalten Sie am Ende doppelte Titel.
Wenn Sie die ID benötigen , dann könnten Sie ein Aggregat verwenden, um MAX(ID) zu erhalten :
select max(id) id,
title
from yourtable
group by title
order by id
Siehe SQL Fiddle mit Demo