FoxPro/Visual FoxPro - SubQuery con Max

 
Vista:
sin imagen de perfil

SubQuery con Max

Publicado por Vgt (9 intervenciones) el 24/08/2016 16:23:04
Saludos Foro,

Les comento que estoy consultando desde PHP a tablas de FoxPro6 por lo que los cursores no funcionan, tengo que hacer la consulta con SQL.

El problema que tengo es una tabla con id y fecha. necesito extraer la consulta de los ultimos registros insertados (por fecha [max]) y sobre esta consulta hacer un segundo filtro de fechas.

Si hago una consulta de esta manera, extraigo la informacion que quiero:

SELECT CALL_SCHEDULE.nid,CALL_SCHEDULE.ncallslipid,max(CALL_SCHEDULE.date) ;
FROM CALL_SCHEDULE ;
GROUP BY CALL_SCHEDULE.ncallslipid ;
ORDER BY CALL_SCHEDULE.ncallslipid asc

Pero si le aplico un where de fecha me traera registros que no quiero, es decir, por ejemplo:
431-51 - 1/1/16
432-51 - 2/1/16
433-51 - 3/1/16
434-54 - 4/1/16
435-54 - 5/1/16

Con la primera consulta, solamente extrae el registro 433 y 435, pero si le pongo un where para que traiga la fecha 2/1/16 me trae el registro 432.
El objetivo es que solamente me haga el where sobre los valores max.

He intentado varias cosas pero sin exito:

SELECT A.ncallslipid ;
FROM CALL_SCHEDULE A;
WHERE EXIST ( SELECT B.ncallslipid,max(B.date) FROM CALL_SCHEDULE B WHERE A.nid = B.nid GROUP BY B.ncallslipid) ;
GROUP BY A.ncallslipid ;
ORDER BY A.ncallslipid asc


SELECT A.ncallslipid,A.date ;
FROM CALL_SCHEDULE A ;
INNER JOIN (SELECT nid,ncallslipid,max(date) FROM CALL_SCHEDULE GROUP BY ncallslipid) B ;
ON A.nid = B.nid


Me pregunto si alguien con mas experiencia en esto me pueda apoyar.

De antemano le agradezco.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder