¿Y siempre van a ser exactamente 10 noticias?, porque si es así ordenas por fecha y muestras las 10 primeras noticias sin condicionar la fecha o condicionando a la fecha mayor o igual a la de ayer (para que la consulta sea más rápida) así te selecciona las noticias de los dos días y te muestra las 10 últimas.
Código:
select * from ... where ... order by fecha desc limit 0,10
Si no vas tener siempre el mismo número de noticias, pues ya tienes que buscar otro sistema: buscar la fecha más alta, guardar en otro tabla la última fecha de noticias registrada para usarla, ...
Espero que te sirva de ayuda.
Un saludo.