Duas tabelas no dbgrid
Estou usando firebird, tenho duas tabelas e queria mostrar um resultado de select com as duas em um dbgrid, tem como fazer isso? :?:
Rjcerri
Curtidas 0
Respostas
Paullsoftware
24/02/2006
claro!
use uma Query e faça assim:
aqui seleciono determinados campos de duas tabelas! :wink:
use uma Query e faça assim:
SELECT LOC.CODIGO AS LOCACAO, LOC.locatario, LOC.dataretorno AS RETORNO, DET.COD_FILME AS FILME,DET.NOME_FILME AS TITULO , DET.DEVOLVIDO FROM DETLOCACAO DET LEFT JOIN LOCACAO LOC ON (DET.LOCACAO=LOC.CODIGO) WHERE ( LOC.PAGO = ´N´ OR ( LOC.PAGO IS NULL ) ) AND ( DET.DEVOLVIDO =´N´ OR (DET.DEVOLVIDO IS NULL))
aqui seleciono determinados campos de duas tabelas! :wink:
GOSTEI 0
Rjcerri
24/02/2006
Desculpe amigo mas não entendi a query.
GOSTEI 0
Adriano Santos
24/02/2006
claro!
use uma Query e faça assim:
aqui seleciono determinados campos de duas tabelas! :wink:
SELECT LOC.CODIGO AS LOCACAO, LOC.locatario, LOC.dataretorno AS RETORNO, DET.COD_FILME AS FILME,DET.NOME_FILME AS TITULO , DET.DEVOLVIDO FROM DETLOCACAO DET LEFT JOIN LOCACAO LOC ON (DET.LOCACAO=LOC.CODIGO) WHERE ( LOC.PAGO = ´N´ OR ( LOC.PAGO IS NULL ) ) AND ( DET.DEVOLVIDO =´N´ OR (DET.DEVOLVIDO IS NULL))
Opa, o que o PallSoftware quis dizer é que você pode fazer um Join entre as duas tabelas para então mostrar o resultado no DBGrid. Por exemplo:
SELECT TABELA1.CODIGO, TABELA1.ENDERECO, TABELA1.BAIRRO, TABELA2.NOME, TABELA2.RG, TABELA2.CPF FROM TABELA1 INNER JOIN TABELA2 ON (TABELA1.CODIGO = TABELA2.CODIGO_TABELA1 WHERE //SUA CONDIÇÃO
Veja se ficou mais claro assim, qq coisa é só gritar.
[/code]
GOSTEI 0
Paullsoftware
24/02/2006
Nessa query que te passei estou mostrando todas as loções que ainda possuem filmes que não foram devolvidos...
mostre a estrutura das suas duas tabelas que te dou um exemplo melhor de como usar...
Tabela Clientes (CodCli,CliNome, CliEnd...)
Tabela Dependentes(Cod, DepCodCli, DepNome,DepNasc...)
para mostrar todos e suas datas de nascimento seria +/- assim:
mais como eu falei, coloque ai a estrutura de suas tabelas dizendo o que vc quer e te dou outro exemplo :roll:
mostre a estrutura das suas duas tabelas que te dou um exemplo melhor de como usar...
Tabela Clientes (CodCli,CliNome, CliEnd...)
Tabela Dependentes(Cod, DepCodCli, DepNome,DepNasc...)
para mostrar todos e suas datas de nascimento seria +/- assim:
Select C.CodCli, C.CliNome, D.DepNome, D.DepNasc From Dependentes D //Aqui digo que D=Tabela de Dependentes //Agora faço a ligação entre as tabelas Left Join Clientes C on (D.DepCodCli = C.CodCli) // onde Digo também que C = Tebela de Clientes e que ele me mostre todos os dependentes pertencentes ao cliente atual // Aqui digo para mostra o cliente de codigo 50 Where CodCli = 50
mais como eu falei, coloque ai a estrutura de suas tabelas dizendo o que vc quer e te dou outro exemplo :roll:
GOSTEI 0
Adriano Santos
24/02/2006
Nessa query que te passei estou mostrando todas as loções que ainda possuem filmes que não foram devolvidos...
mostre a estrutura das suas duas tabelas que te dou um exemplo melhor de como usar...
Tabela Clientes (CodCli,CliNome, CliEnd...)
Tabela Dependentes(Cod, DepCodCli, DepNome,DepNasc...)
para mostrar todos e suas datas de nascimento seria +/- assim:
mais como eu falei, coloque ai a estrutura de suas tabelas dizendo o que vc quer e te dou outro exemplo :roll:
Select C.CodCli, C.CliNome, D.DepNome, D.DepNasc From Dependentes D //Aqui digo que D=Tabela de Dependentes //Agora faço a ligação entre as tabelas Left Join Clientes C on (D.DepCodCli = C.CodCli) // onde Digo também que C = Tebela de Clientes e que ele me mostre todos os dependentes pertencentes ao cliente atual // Aqui digo para mostra o cliente de codigo 50 Where CodCli = 50
É isso ai, fica mais fácil pra gente te ajudar. Não é difícil, muito pelo contrário. :P
GOSTEI 0
Rjcerri
24/02/2006
Tentei mas não deu certo as tabelas esta assim
tabela padrao
codigo,descricao
tabela prod
codigo,qtd,embalagem
no grid eu estou mostrando a prod
Obrigado
tabela padrao
codigo,descricao
tabela prod
codigo,qtd,embalagem
no grid eu estou mostrando a prod
Obrigado
GOSTEI 0
Rjcerri
24/02/2006
Esqueci que a consulta e pela descrição do produto
GOSTEI 0
Martins
24/02/2006
Tentei mas não deu certo as tabelas esta assim
tabela padrao
codigo,descricao
tabela prod
codigo,qtd,embalagem
no grid eu estou mostrando a prod
Obrigado
Vc pode usar a lógica passada usando [color=darkblue:240918df4e][b:240918df4e]Inner Join[/b:240918df4e][/color:240918df4e]
SELECT P1.CODIGO, P2.DESCRICAO, P1.QTD, P1. EMBALAGEM FROM PROD P1 INNER JOIN PADRAO P2 ON (P1.CODIGO = P2.CODIGO) WHERE //SUA CONDIÇÃO
Mais ou menos isso, aí vc coloca sua condição Ok!
Boa sorte!!
GOSTEI 0
Rjcerri
24/02/2006
Deu certo galera, estava dando mole agora consegui entender. obrigado a todos
GOSTEI 0
Martins
24/02/2006
Deu certo galera, estava dando mole agora consegui entender. obrigado a todos
Estamos aqui para aprendermos uns com os outros, ajudar um colega faz parte do nosso aprendizado e fazemos isso sempre que possível.
Valew!!
GOSTEI 0
Henrique Rodrigues
24/02/2006
E na grid, como vincular uma as colunas a uma consulta dinamica?
GOSTEI 0