из ваших комментариев, если "с и до сегодняшнего дня сравнение не должно повторяться" - это ваше требование, оно очень просто
В случае, если есть несколько "ID" с одинаковыми данными и датой, и вы хотите покажите ПЕРВЫЙ ID , затем используйте это
select MIN(id) id,fromdata, todate from tablename group by fromdata, todate
В случае, если есть несколько "ID" с одинаковыми данными и датой, и вы хотите показать LAST ID , затем используйтеэто
select MAX(id) id,fromdata, todate from tablename group by fromdata, todate