SELECT COMPLICADO PARA FAZER

MARCELO.TREZE 05/11/2009 11:55:04
#327004
só uma pequena modificação

[Ô]SELECT Clientes.DataCadastro,Clientes.Ativo,Consultas.* FROM Clientes INNER JOIN Consultas ON (Clientes.DataCadastro BETWEEN [ô][Ô] & Format(DataINI.Text,[Ô]YYYY-MM-DD) & [Ô][ô] AND [ô][Ô] & Format(DataFim.Text,[Ô]YYYY-MM-DD) & [Ô][ô]) AND (Clientes.ativo = [ô]True[ô]) AND (Consultas.Data < [ô][Ô] & Format(DataIni.Text,[Ô]YYYY-MM-DD) & [Ô][ô] AND  Consultas.Data > [ô][Ô] & Format(DataFim.Text,[Ô]YYYY-MM-DD) & [Ô][ô])[Ô]


vamos lá uma hora a gente acerta

LCSD 05/11/2009 12:02:44
#327005
Marcelo, fiz uma pequena alteração e QUASE deu certo..... Fiz assim:

SELECT clientes.datainclusao, consultas.* FROM clientes INNER JOIN consultas ON
clientes.codigo = consultas.codcliente where
(clientes.DataInclusao BETWEEN [ô]2009-11-04[ô] AND [ô]2009-11-04[ô]) AND (clientes.situacao = [ô]A[ô]) AND
(consultas.Data <= [ô]2009-11-04[ô] AND consultas.Data >= [ô]2009-11-04[ô])


Só que assim, ele me trará os registros SOMENTE do cara que foi CADASTRADO no dia 04.
Na verdade eu quero é saber QUEM não usou o sistema no dia 04
LCSD 05/11/2009 12:04:45
#327007
Corrigindo a query.....

SELECT clientes.datainclusao, consultas.* FROM clientes INNER JOIN consultas ON
clientes.codigo = consultas.codcliente where
(clientes.DataInclusao <= [ô]2009-11-04[ô] ) AND (clientes.situacao = [ô]A[ô]) AND
(consultas.Data <= [ô]2009-11-04[ô] AND consultas.Data >= [ô]2009-11-04[ô])


Assim eu trago TODAS as consultas FEITAS no período, mas quero é saber o contrário... QUEM não usou o sistema...
MARCELO.TREZE 05/11/2009 12:18:07
#327009
tire o igual desta parte

consultas.Data <= [ô]2009-11-04[ô] AND consultas.Data >= [ô]2009-11-04[ô])

deixe assim,

consultas.Data < [ô]2009-11-04[ô] AND consultas.Data > [ô]2009-11-04[ô])
MARCELO.TREZE 05/11/2009 12:20:16
#327010
a quer que vc postou achoa mais correta

SELECT clientes.datainclusao, consultas.* FROM clientes INNER JOIN consultas ON 
clientes.codigo = consultas.codcliente where
(clientes.DataInclusao BETWEEN [ô]2009-11-04[ô] AND [ô]2009-11-04[ô]) AND (clientes.situacao = [ô]A[ô]) AND
(consultas.Data < [ô]2009-11-04[ô] AND consultas.Data > [ô]2009-11-04[ô])
LCSD 05/11/2009 13:16:05
#327022
Marcelo, negativo....


Tenho clientes neste período que não utilizaram o sistema onde não está aparendo para mim neste select.


acho que vou ter que apelar e fazer da seguinte forma:
Fazer um select na tabela de cliente com data de inclusão <= data selecionada.
Jogar este resultado pra um RECORDSET e deste recordset fazer um SELECT TOP 1 na tabela CONSULTA no período (por cliente), e verificar se existe registro no período. Se não exisitir, incluir no relatório este cara.
Vai ser mais fácil..............
MARCELO.TREZE 05/11/2009 13:32:43
#327023
e assim

SELECT clientes.datainclusao, consultas.* FROM clientes INNER JOIN consultas ON 
clientes.codigo = consultas.codcliente where
(clientes.DataInclusao BETWEEN [ô]2009-11-04[ô] AND [ô]2009-11-04[ô]) AND (clientes.situacao = [ô]A[ô]) AND consultas.Data <> Clientes.dataInclusao
LCSD 05/11/2009 14:03:52
#327027
Negativo MARCELO....


Vou ter que apelar mesmo e fazer como descreví acima.... Tenho até SABADO para terminar este e outros 2 relatórios.... Não posso perder mais muito tempo nisso....
Página 2 de 2 [18 registro(s)]
Tópico encerrado , respostas não são mais permitidas