Fórum Filtro complicado !!!! #289047
21/07/2005
0
É o seguinte galera a estrutura do meu banco de dados é a seguinte:
[list:18066e3ad3]
[*:18066e3ad3]Banco de dados Interbase.
[*:18066e3ad3]Tabela cliente onde salva os dados pessoais do cliente (nome,endereço,etc...).
[*:18066e3ad3]outra tabela ligada com a tabela cliente que salva os contratos que o cliente tem.
[*:18066e3ad3]e uma 3ª tabela ligada na tabela que mostra os contratos , essa tabela mostra os tados do contrato (vencimento das parcelas,avalista etc...)
[/list:u:18066e3ad3]
[size=12:18066e3ad3][color=blue:18066e3ad3]Agora que vem a bucha é o seguinte, tenho que selecionar em uma query os dados da tabela cliente (nome,endereço etc...)so que so quero os clientes que tenhao um contrato e que a parcela numero tal (campo parcela_1) esteja entre as datas estipulas antes do filtro (em um datetimepicker).Espero que alguem aqui saiba !!!![/size:18066e3ad3][/color:18066e3ad3]
[size=20:18066e3ad3][color=red:18066e3ad3]Valeu pessoal!!![/size:18066e3ad3][/color:18066e3ad3]
Guilherme
Curtir tópico
+ 0Posts
21/07/2005
Fabio Nascimento
select * from clientes c
join contratos t
where t.parcela_1 between :data1 and data2
order by c.codigo
Gostei + 0
21/07/2005
Guilherme
Esqueci de por o nome das tabelas:
[size=14:7f576e6532][color=red:7f576e6532]Cliente,Contratos,dados_contrato[/size:7f576e6532][/color:7f576e6532]
A tabela contratos pode receber mais de 1 registro por cliente e a tabela dados_contrato so recebe 1 registro por contrato.
Espero ter ajudado mais !!!!
Gostei + 0
25/07/2005
Guilherme
Gostei + 0
25/07/2005
Rjun
Select Cl.Codigo, Cl.Nome, Count(Co.NumContrato) From Clientes Cl Left Join Contrato Co On Co.CodCliente = Cl.Codigo Left Join DadosCon Dc on Dc.NumContrato = Co.NumContrato Where Dc.Data Between :Data1 and :Data2 Group By Cl.Codigo, Cl.Nome Having Count(Co.NumContrato) = 1
Gostei + 0
25/07/2005
Guilherme
este codigo verifica todos os contratos ????
Gostei + 0
25/07/2005
Rjun
Gostei + 0
25/07/2005
Guilherme
cara como so iniciante em sql sera q vc me esplica as funçao q vc uso ai ???/
Gostei + 0
25/07/2005
Rjun
Gostei + 0
25/07/2005
Guilherme
Gostei + 0
25/07/2005
Rjun
Cliente Contrato
000001 0000001
000002 0000002
000001 0000003
000001 0000004
000002 0000005
Se fosse um select so com totalização, o resultado seria assim:
Cliente Total
000001 3
000002 2
Gostei + 0
25/07/2005
Guilherme
me add ai no msn !!!!!
Gostei + 0
25/07/2005
Rjun
Gostei + 0
25/07/2005
Guilherme
Gostei + 0
25/07/2005
Rjun
Select Cl.Codigo, Cl.Nome Co.NumContrato From Clientes Cl Left Join Contrato Co On Co.CodCliente = Cl.Codigo Left Join DadosCon Dc on Dc.NumContrato = Co.NumContrato Where Dc.Data Between :Data1 and :Data2
Gostei + 0
25/07/2005
Guilherme
si nao for abuso vc me esplica como q funciona essas funçao q vc uso ???
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)