Fórum Unir 2 tabelas #479426

19/05/2014

0

Bom dia !!
Tenho 2 tabela saida e produto
Saida PRODUTO
ID_SAIDA (PK) ID_PRODUTO(PK)
id_produto(FK) produto
qtde_saida codigo
motivo_saida qtde_estoque
data_saida id_grupo(FK)


Estou fazendo o << Select * from Saida where data_Saida between :data1 and :data2 order by data_Saida >>
que me retorna o seguinte valor <<ID_SAIDA ID_PRODUTO QTDE_SAIDA MOTIVO_SAIDA >> gostaria que retorna-se também o nome do produto seria possivel ?


Victor Pereira

Victor Pereira

Responder

Post mais votado

20/05/2014

Sim, você pode utilizar quantas tabelas você quiser, desde que vc liguei as chaves estrangeiras com as chaves primárias corretamente.
Você possui uma tabela Grupo?
Imagino que tenha um atributo (FK) na tabela produto que possa identificar o grupo que aquele produto pertence. É isso?

Marisiana Battistella

Marisiana Battistella
Responder

Gostei + 2

Mais Posts

19/05/2014

Marisiana Battistella

Olá Victor!
Como boa prática, recomendo que nunca utilize "Select * " nos teus SQLs, sempre informe os nomes das colunas com as informações que vc precisa que o SQL retorne.

Você pode fazer o SQL assim:
select s.id_saida,
            s.data_saida,
            p.id_produto,
            p.produto,
            s.qtde_saida,
            s.motivo_saida
from saida  s
join produto p
on s.id_produto = p.id_produto
where s.data_Saida between :data1 and :data2
order by s.data_Saida
Responder

Gostei + 1

19/05/2014

Marisiana Battistella

Pra quem quiser entender melhor, esta matéria possui uma explicação bem interessante sobre o uso de JOINS [url]http://sqlfromhell.wordpress.com/2009/09/15/trabalhando-com-join/[/url]
Responder

Gostei + 1

19/05/2014

Victor Pereira

muito obrigado pela ajuda
Responder

Gostei + 0

19/05/2014

Marisiana Battistella

Por nada!
Era disso que você precisava?
Se tiver mais alguma dúvida, fique a vontade para falar...
Responder

Gostei + 1

20/05/2014

Victor Pereira

Seria possível eu fazer um select com 3 tabelas ?

Eu gostaria de escolher o grupo e depois as datas e mostrar o produto?

Esse código escolho, as datas e mostra os produtos......

select s.id_saida,s.data_saida,p.id_produto,p.produto,p.codigop, s.qtde_saida,s.motivo_saida from saida s
join produto p on s.id_produto = p.id_produto where s.data_Saida between :data1 and :data2 order by s.data_Saida
Responder

Gostei + 0

20/05/2014

Marisiana Battistella

Se a ligação entre as tabelas for da forma como questionei, você terá que fazer assim:

select s.id_saida,
            s.data_saida,
            p.id_produto,
            p.produto,
            s.qtde_saida,
            s.motivo_saida
from saida  s
join produto p
on s.id_produto = p.id_produto
join grupo g
on p.id_grupo = g.id_grupo
where s.data_Saida between :data1 and :data2
and g.id_grupo = :códigogrupo
order by s.data_Saida

Responder

Gostei + 2

06/06/2014

Victor Pereira

obrigado pela ajuda !!!
Responder

Gostei + 0

10/06/2014

Marisiana Battistella

Por nada! =)
Responder

Gostei + 0

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

Aceitar