Buenas, lo logico es que lo que pides no tenga sentido, ya que el id se supone PK y por tanto es unico, solo habrá una fecha para ese ID.
Si id no es PK
Código:
select * from tabla where id = x and fecha = (select max(fecha) from tabla where id = x)
Salu2