Ir para conteúdo
Fórum Script Brasil
  • 0

Select relacionando 3 tabelas


carlosmandra

Pergunta

Pessoal,

to montando uma página de um jornal que exibirá as notícias relacionadas a uma determinada matéria. Tenho 3 tabelas:

table_noticia (é a notícia cadastrada. Vários campos, mas os mais importantes pra dúvida são:)
id, titulo, editoria
Ex de preenchimento: 1, Campanha nas ruas ainda não apareceu, 5

table editoria (contém as editorias do jornal. Geralmente, há duas ou mais editorias sobre o mesmo assunto, ou área)
id, editoria, area
Ex de preenchimento: 5, Eleições 2008, 2

table area (contém as macro-áreas de assunto, como política, saúde, educação, etc)
id, nome
Ex de preenchimento: 2, política

Estou exibindo na página, por exemplo, a notícia de ID 1, cuja editoria é Eleições 2008, relacionada à área política. No rodapé, quero relacionar as últimas 5 últimas notícias com o mesmo assunto, não necessariamente da mesma editoria (Eleições 2008), mas especificamente da mesma área (política).

Preciso selecionar as matérias cuja editoria (noticias.editoria) esteja na área (area.id) do respectivo assunto da editoria (editoria.area). Não sei se essa lógica tá certa, mas não estou conseguindo pensar nessa ligação entre as 3 tabelas.

Alguém pode me ajudar?

Abraço

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Oi, 'carlosmandra'!

Pelo que entendi, sua select ficaria assim:

SELECT STRAIGTH_JOIN <lista-de-campos> 
FROM Noticias N
INNER JOIN editora E ON N.editora = E.id
INNER JOIN area A ON E.area = A.id
WHERE E.nome = <seu-campo-de-pesquisa> 
ORDER BY <data-de-publicação> DESC LIMIT 5  ;

Onde:

<lista-de-campos> é a lista de campos que você quer que o sql retorne.

<seu-campo-de-pesquisa> a variável PHP que deverá fornaecer informações a pesquisa

<data-de-publicação> a data em que as publicações foram registradas.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...