Je zou een derde kolom kunnen toevoegen ModifiedDate en gebruik dat:
insert into t(id, tag)
select id, tag
on duplicate key update ModifiedDate = now();
Dit zorgt ervoor dat er echt een update plaatsvindt en dat op zijn beurt LAST_INSERT_ID() geeft een waarde terug.