Si dices que hay una relación de ambas tablas por ID's .. deberías hacer una consulta SQL tipo:
Código:
SELECT datos.*,noticias.* FROM datos, noticias WHERE id_noticia_da.noticia = id_datos.datos
o Bien con INERT JOIN o equivalentes.
De esta forma generas un sólo resultado que recorrer, mucho más optimo que intentar "anidar" una consulta en otra (sub-consulta) como pretendes hacerlo.
En ese caso .. usa esta técnica de "acomulador" para representar los datos como buscas (noticia -> datos ... noticia -> datos ....)
http://www.forosdelweb.com/f18/problema-con-while-anidado-339398/ http://www.forosdelweb.com/f18/como-listo-estos-registros-mysql-319669/
(presta atención al orden que debes emplear como para "agrupar" esos datos y que todo esto funcione correctamente).
Un saludo,