DISTINCT
si applica all'intera riga di dati. Dal momento che il ID
è diverso su ogni riga, quindi ti ritroverai con titoli duplicati.
Se hai bisogno del ID
, puoi utilizzare un aggregato per ottenere il MAX(ID)
:
select max(id) id,
title
from yourtable
group by title
order by id
Vedi SQL Fiddle con demo