Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

DackAle

com JOIN

Recommended Posts

Olá pessoal

 

Estou com uma dúvida de JOIN. Tenho 3 tabelas

 

- TB_Posts (Contem todas as postagens de um blog)

- TB_Comentarios (Contem os comentários dos posts)

- TB_Categoria_Post (Salva qual categoria é o post, criei essa tabela porque um post pode estar em mais de uma categoria, por exemplo, um post sobre acessibilidade pode estar na categoria "acessibilidade" e "evento")

 

O Código atual pega todos os posts e quantos comentários tem e está assim:

 

"SELECT TB_Posts.cod, TB_Posts.descricao, TB_Posts.titulo, TB_Posts.data_criacao, COUNT(TB_Comentarios.Post) AS ContaPost FROM TB_Posts LEFT JOIN TB_Comentarios ON TB_Posts.cod = TB_Comentarios.Post GROUP BY TB_Posts.cod,TB_Posts.titulo,TB_Posts.descricao,TB_Posts.data_criacao ORDER BY TB_Posts.Data_Criacao DESC"

Mas preciso pegar em uma página só os posts que sejam da categoria 3, algo como

 

"WHERE TB_Categoria_Post.Categoria = 3"

Mas como inserir uma terceira tabela na transação acima?

 

Sei que é dúvida besta, mas :P

 

Muito obrigado galera

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deve ser algo assim

LEFT JOIN TB_Categoria_Post ON TB_Categoria_Post.ID_CATEGORIA = TB_Posts.ID_CATEGORIA

GROUP BY TB_Posts.cod,TB_Posts.titulo,TB_Posts.descricao,TB_Posts.data_criacao

ORDER BY TB_Posts.Data_Criacao DESC" _linenums:0'>"SELECT TB_Posts.cod, TB_Posts.descricao, TB_Posts.titulo, TB_Posts.data_criacao, COUNT(TB_Comentarios.Post) AS ContaPost FROM TB_Posts LEFT JOIN TB_Comentarios ON TB_Posts.cod = TB_Comentarios.Post LEFT JOIN TB_Categoria_Post ON TB_Categoria_Post.ID_CATEGORIA = TB_Posts.ID_CATEGORIAGROUP BY TB_Posts.cod,TB_Posts.titulo,TB_Posts.descricao,TB_Posts.data_criacao ORDER BY TB_Posts.Data_Criacao DESC"

Compartilhar este post


Link para o post
Compartilhar em outros sites

"SELECT P.cod, P.descricao, P.titulo, P.data_criacao, COUNT(C.Post) AS ContaPost "&_

FROM (TB_Posts P LEFT JOIN TB_Comentarios C ON T.cod = C.Post ) INNER JOIN TB_Categoria_Post CP ON C.post = CP.post "&_

WHERE CP.Categoria = 3 "&_

GROUP BY P.cod, P.titulo, P.descricao, P.data_criacao "&_

ORDER BY P.Data_Criacao DESC"

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.