Problemas con Consulta SQL

Cristian Garofalo
31 de Octubre del 2003
ALGUIEN ME PODRIA DECIR POR QUE ESTO NO FUNCIONA?, ME DA Casi 3000 Registros y tendrian que ser AProx 120 poniendo fechas relativamente actuales,

Lo que me esta pidiendo son los clientes que no hayan visitado el NEgocio durante los ultimos 15 meses, pero como puede variar las fechas las he puesto para que las ingrese el Usuario.
Lo que hago con esta consulta es
PRIEMERO-
Seleccionar FECHA NOMBRE Y CODIGO DE LOS CLIENTES QUE VISITARON EL NEGOCIO ENTRE LAS FECHAS ESTIPULADAS , por ejemplo si me piden los clientes que no han visitado el negocio los ultimos dos meses seleccionare DESDE 29/08/2003 al 29/10/2003

SEGUNDO
Seleccionar CODIGO DONDE FECHA>29-08-2003
Aca tengo todos los codigos de los CLIENTES que han VISITADO EL NEGOCIO DESDE LA FECHA

POR LO TANTO, SI COMPARO LAS DOS TABLAS COn UN "NOT IN" NO ME TENDRIA QUE DAR LOS CLIENTES QUE NO HAN VISITADO EL NEGOCIO DESDE LA FECHA INGRESADA

"SELECT O.orpfecrec,C.clicod,C.clinom FROM ORDENREP O, CLIENTES C where (c.clicod=O.clicod) and (O.orpfecrec > #" & desde.Caption & "#) and (O.orpfecrec < #" & Hasta.Caption & "#) and (C.clicod NOT IN (SELECT clicod FROM ORDENREP where ((c.clicod=o.clicod) and (O.orpfecrec > #" & Hasta.Caption & "#)))) "

Esto no funciona y la verdad me esta haciendo doler la cabeza mas de lo debido Saludos a todos!

Khriztian
31 de Octubre del 2003
Si te entendí bien, creo que con esto debería bastar ..

"SELECT O.orpfecrec,C.clicod,C.clinom FROM ORDENREP O, CLIENTES C where (c.clicod=O.clicod) and (O.orpfecrec >= #" & desde.Caption & "#) and (O.orpfecrec <= #" & Hasta.Caption & "#) "

Cristian Garofao
31 de Octubre del 2003
HAciendo eso que dices tu, solo obtengo los clientes que han visitado el negocio durante ese periodo y lo que yo necesito es calcular los clientes que no han venido al negocio durante un determinado tiempo,

Adriel Mercado
31 de Octubre del 2003
Mira, creo que tu problema es que quieres unir dos tablas sin necesidad de hacerlo.....

Si tu seleccionas los campos que necesitas de la tabla de clientes y despues haces un not in de el id del cliente en la tabla de movimientos....seria suficiente....


Creo que seria algo asi

Select Clicod, Clinom From Clientes where Clicod not in (select clicOd from OrdenRep where orpfecrec between FechaInicial and FechaFinal)



Creo que con eso es mas que suficiente..

Saludos !!!!