Ir ao conteúdo
  • Cadastre-se
fabio.ctc

PostgreSQL Select Postgres valor tabelas diferentes

Posts recomendados

Olá, quero que minha pesquisa retorne um valor que será oriunda de duas tabelas distintas. 
 

Vou colocar aqui meu script que faz alusão ao que eu preciso:

select * from colaborador where filial = 80 in (select * from controle where controla_anti_dupla = '1')

Sei que essa sintaxe está errada e por isso peço ajuda. Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

@fabio.ctc  bom dia!

 

Só para entender um pouco melhor, você quer achar a filial numero 80 e o que mais?

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Leonardo0308 Quero encontrar todo mundo que está na tabela colaborador que esteja cadastrado com a filial 80 e que também na tabela controle tenha o campo controla_anti_dupla = '1'

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perfeito, mas o que relaciona a tabela controle com a tabela colaborador?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como assim? uma coluna que é em comum nas duas tabelas?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode ser também, mas assim na "vida real" o que uma tabela ter haver com a outra?

 

Qual a relação delas na "vida real"?

Compartilhar este post


Link para o post
Compartilhar em outros sites

uma delas é o cadastro do colaborador e as informações pertinentes aos controles de acesso do mesmo e a outra são os cadastros dos colaboradores e as informações pertinentes ao colaborador e a empresa

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se eu entendi o colaborador tem o seu cadastro com as informações dele, ok. E esse controle define o que o colaborador pode ou não ter acesso, correto?

Compartilhar este post


Link para o post
Compartilhar em outros sites

é resumidamente isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo, agora a questão é, o que liga essas tabelas?

 

Você definiu um relacionamento para elas? (1:N, N:N)

 

O que diz que o @fabio.ctc tem acesso a contas por exemplo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cada colaborador pode estar em uma empresa e um conjunto de regras apenas (1:1). 

Não entendi: "O que diz que o @fabio.ctc tem acesso a contas por exemplo."

Compartilhar este post


Link para o post
Compartilhar em outros sites
7 minutos atrás, fabio.ctc disse:

Não entendi: "O que diz que o @fabio.ctc tem acesso a contas por exemplo."

 

Quando você disse controle de acesso, me lembre de acesso a menus, como menu "contas", mas só foi um exemplo :P

 

Via de regra, se o relacionamento das duas tabelas é 1:1 a gente junta as tabelas.

 

Mas caso você não tenha essa possibilidade você pode fazer um pseudo 1:N, colocando o id do colaborador na tabela controle ou vice-versa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Legal, mas qual é a sintaxe? 
E como se chama a técnica da sintaxe ou o nome do comando e ou etc ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

No segundo caso você terá que dar um ALTER TABLE em alguma tabela, ou no primeiro caso você pode deletar as tabelas e criar uma unica tabela com as informações.

 

Ai depende do que você pode fazer, isso que você está fazendo é só teste ou é para alguma empresa real?

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Leonardo0308 empresa real, não posso fazer isso, eu estou cobrindo ferias do responsável da área e não tenho muita intimidade com banco de dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, te recomendo antes de tudo verificar como funciona o comando de rollback do postgre.

 

O """"certo"""" então seria usar o Alter table, mas antes vamos tentar buscar uma alternativa.

 

Esse tipo de pesquisa já foi feita antes?

 

Do que você viu das tabelas, não tem nada que relacione uma com a outra? um ID, nome de colaborador ou nome do grupo de controle?

 

Alias você pode enviar a estrutura dessas duas tabelas?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Aprenda_a_Ler_Resistores_e_Capacitores-capa-3d-newsletter.jpg

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!