Hola Sabin:
No entendí qué ayuda es la que necesitas, si es con el modelo de tu BD o con programación. Si es este último creo que te equivocaste de Foro, lo correcto es que te dirijas al foro de PHP que está habilitado para este fin
http://www.forosdelweb.com/f18/
Ahora bien, si lo que quieres es tener ideas acerca del modelo de BD, este dependerá de tu lógica de negocio, por ejemplo, si una noticia puede entrar en una y sólo una categoría entonces tal como mencionas, lo único que tendrías que hacer es agregar un campo a tu tabla de noticias donde especifiques a qué categoría pertenece. Es recomendable que crees un catálogo de categorías y que el campo nuevo sea una FK hacia este catálogo.
Sin embargo, podría darse el caso de una noticia que pudiera entrar en más de una categoría, por ejemplo:
"Hugo Chávez siente que les robaron la final"
Esta noticia podría entrar tanto en la categoría DEPORTES como INTERNACIONAL o incluso POLÍTICA, al referirse al presidente de un país.
Bajo este esquema, al tener una relación muchos a muchos sería necesario crear una tabla adicional NOTICIAS-CATEGORIAS (manteniendo la tabla de noticias y la de categorías) donde contendía sólo las llaves hacia estas dos tablas.
En cuanto a cómo hacer la consulta, bueno dependería en primer lugar del modelo que elijas, con el primer escenario sería símplemente hacer algo como esto:
Código:
Select * from Noticias where id_categoria = Categoría_seleccionada_por_usuario
Para el caso del segundo escenario la consulta sería más o menos así
Código:
Select N.* from Noticias T1
INNER JOIN Noticias-categorías NC on NC.id_noticia = N.id
WHERE NC.id_categoria = Categoría_seleccionada_por_usuario
Espero que esto te pueda ayudar de alguna manera.
Saludos
Leo.