Fórum Consulta com Inner Join buscando dados de duas tabelas #612545

21/08/2020

0

PHP

Bom dia Devs! Tenho uma tabela usuarios e outra post. O sistema é de memorando interno da empresa.
Na tabela usuarios, tenho os seguintes campos (resumido)
id_user
nome
setor
cargo
email
senha
Na tabela post tenho os seguintes campos:
id_post
destinatario (é o setor que receberá o memorando) - foi feito um Autocomplete buscando da tabela usuarios
titulo
postagem
created
O problema que o campo do destinatario tem o mesmo nome do campo setor de quem está enviando. Na consulta não consigo fazer aparecer os dois.
Fico grato pela ajuda!
Pacífico

Pacífico

Responder

Posts

21/08/2020

Emerson Nascimento

publique a query que você testou... sem saber como relacionar as tabelas fica difícil dar uma resposta precisa.
de qualquer forma, segue um exemplo:
select
   u.id_user,
   u.nome,
   u.setor,
   u.cargo,
   u.email,
   u.senha,
   p.id_post,
   p.destinatario dest_post, -- vou utilizar o apelido dest_post para a coluna p.destinatario, assim não confunde com outra coluna
   p.titulo,
   p.postagem
from
   user u
left join
   post p on p. --- aqui você faz o relacionamento entre as tabelas, sempre colocando o 'apelido' da tabela
where
   [condicao]
Responder

Gostei + 0

24/08/2020

Pacífico

Emerson, em primeiro lugar agradeço pela atenção.
Fiz os selects usando o Inner Join, mas, acho que a forma que estou usando o Insert no cadastro da postagem que pode está errado.
Parece que não está vinculando o setor ao usuário.
MInha tabela "post" está assim:
id_post |destinatario |tratamento |dest_cc |dest_co |dest_cco |titulo |postagem |imagem |id_user |created
9 Laboratório teste teste [BLOB - 19 Bytes] 46 2020-08-18

No Autocomplete do campo Destinatário, ele busca nos usuários cadastrados o campo setor.
Se ele seleciona o setor, como pego o nome do usuário também?
Aí que está a minha dor de cabeça.

Valeu!

publique a query que você testou... sem saber como relacionar as tabelas fica difícil dar uma resposta precisa.
de qualquer forma, segue um exemplo:
select
   u.id_user,
   u.nome,
   u.setor,
   u.cargo,
   u.email,
   u.senha,
   p.id_post,
   p.destinatario dest_post, -- vou utilizar o apelido dest_post para a coluna p.destinatario, assim não confunde com outra coluna
   p.titulo,
   p.postagem
from
   user u
left join
   post p on p. --- aqui você faz o relacionamento entre as tabelas, sempre colocando o 'apelido' da tabela
where
   [condicao]
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar