Fórum Consulta sql em mais de uma tabela #280639
08/05/2005
0
Qualquer ajuda ou dica me ajudara muito!
Muito obrigado pela atenção!
Um forte abraço a todos!
Jorgerock
Curtir tópico
+ 0Posts
08/05/2005
Raserafim
select MOVIMENTO.COD_PESSOA, MOVIMENTO.COD_AUXILIO, FICHA_PESSOA.NOME, AUXILIOS.NOME from FICHA_PESSOA join MOVIMENTO on FICHA_PESSOA.COD_PESSOA = MOVIMENTO.COD_PESSOA join AUXILIOS on AUXILIOS.COD_AUXILIO = MOVIMENTO.COD_AUXILIO
basta agora fazer as adaptações dos nomes de campos das suas tabelas e ver se é isso mesmo que vc quer.
Gostei + 0
09/05/2005
Jorgerock
a minha consulta ficaria assim:
select MOVIMENTO.CODIGOPESSOA, MOVIMENTO.CODIGOAUXILIO, MOVIMENTO.DATAMOVIMENTO, MOVIMENTO.QUANTIDADE, FICHAPESSOA.NOMEPESSOA, AUXILIOS.NOMEAUXILIO, AUXILIOS.UNIDADEAUXILIO
from FICHAPESSOA join MOVIMENTO on FICHAPESSOA.CODIGOPESSOA = MOVIMENTO.CODIGOPESSOA join AUXILIOS on AUXILIOS.CODIGOAUXILIO = MOVIMENTO.CODIGOAUXILIO
no meu formulario, por eu tenho que resgatar, todos os auxilios que fulano de tal pegou ou todas as saidas que tal auxilio teve, e tambem todos os auxilios que fulano de tal pegou em um intervalo de tempo.
resgatar tudo oque fulano de tal pegou eu consegui assim:
dmdados.qryconsultamovimento.sql.clear;
dmdados.qryconsultamovimento.sql.add(´select MOVIMENTO.CODIGOPESSOA, MOVIMENTO.CODIGOAUXILIO, MOVIMENTO.DATAMOVIMENTO, MOVIMENTO.QUANTIDADE, FICHAPESSOA.NOMEPESSOA, AUXILIOS.NOMEAUXILIO, AUXILIOS.UNIDADEAUXILIO ´);
dmdados.qryconsultamovimento.Sql.Add(´from FICHAPESSOA join MOVIMENTO on FICHAPESSOA.CODIGOPESSOA = MOVIMENTO.CODIGOPESSOA join AUXILIOS on AUXILIOS.CODIGOAUXILIO = MOVIMENTO.CODIGOAUXILIO where FICHAPESSOA.CODIGOPESSOA=´+#39+edtcodigopessoa.text+39);
dmdados.qryconsultamovimento.Prepare;
dmdados.qryconsultamovimento.open;
mas agora eu preciso pegar oque ele pegou em determinado periodo de tempo, fiz assim mas não compila:
var
inicio:string;
final:string;
begin
dmdados.qryconsultamovimento.sql.clear;
Inicio := DateToStr(DateTimePicker1.Date);
Final := DateToStr(DateTimePicker2.Date);
dmdados.qryconsultamovimento.sql.clear;
dmdados.qryconsultamovimento.sql.add(´select MOVIMENTO.CODIGOPESSOA, MOVIMENTO.CODIGOAUXILIO, MOVIMENTO.DATAMOVIMENTO, MOVIMENTO.QUANTIDADE, FICHAPESSOA.NOMEPESSOA, AUXILIOS.NOMEAUXILIO, AUXILIOS.UNIDADEAUXILIO ´) ;
dmdados.qryconsultamovimento.Sql.Add(´from FICHAPESSOA join MOVIMENTO on FICHAPESSOA.CODIGOPESSOA = MOVIMENTO.CODIGOPESSOA join AUXILIOS on AUXILIOS.CODIGOAUXILIO = MOVIMENTO.CODIGOAUXILIO where FICHAPESSOA.CODIGOPESSOA=´+#39+edtcodigopessoa.text+39 and ´MOVIMENTO.DATAMOVIMENTO >=:pInicial and MOVIMENTO.DATAMOVIMENTO <=:pFinal´);
dmdados.qryconsultamovimento.ParamByName(´pInicial´).AsDateTime := StrToDate(Inicio);
dmdados.qryconsultamovimento.ParamByName(´pFinal´).AsDateTime := StrToDate(Final);
dmdados.qryconsultamovimento.Prepare;
dmdados.qryconsultamovimento.open;
pode me ajudar a resolver esse codigo. é a primeira vez que eu faço uma consulta deste tipo.
Muito obrigado pela atenção!
Um forte abraço!
Obrigado por tudo!
Gostei + 0
09/05/2005
Jorgerock
ficou assim o codigo:
inicio:string;
final:string;
begin
dmdados.qryconsultamovimento.sql.clear;
Inicio := DateToStr(DateTimePicker1.Date);
Final := DateToStr(DateTimePicker2.Date);
dmdados.qryconsultamovimento.sql.clear;
dmdados.qryconsultamovimento.sql.add(´select MOVIMENTO.CODIGOPESSOA, MOVIMENTO.CODIGOAUXILIO, MOVIMENTO.DATAMOVIMENTO, MOVIMENTO.QUANTIDADE, FICHAPESSOA.NOMEPESSOA, AUXILIOS.NOMEAUXILIO, AUXILIOS.UNIDADEAUXILIO ´) ;
dmdados.qryconsultamovimento.Sql.Add(´from FICHAPESSOA join MOVIMENTO on FICHAPESSOA.CODIGOPESSOA = MOVIMENTO.CODIGOPESSOA join AUXILIOS on AUXILIOS.CODIGOAUXILIO = MOVIMENTO.CODIGOAUXILIO where FICHAPESSOA.CODIGOPESSOA=´+#39+edtcodigopessoa.text+39+ ´and MOVIMENTO.DATAMOVIMENTO >=:pInicial and MOVIMENTO.DATAMOVIMENTO <=:pFinal´);
dmdados.qryconsultamovimento.ParamByName(´pInicial´).AsDateTime := StrToDate(Inicio);
dmdados.qryconsultamovimento.ParamByName(´pFinal´).AsDateTime := StrToDate(Final);
dmdados.qryconsultamovimento.Prepare;
dmdados.qryconsultamovimento.open;
Valeu raserafim, sozinho eu não teria conseguido!
Um forte abraço!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)