Hola hcbosch:
Creo que el problema está en que olvidas que la función sysdate te regresa la fecha y HORA del sistema. Puede ser que al momento de que almacenas la información en tu tabla también estás guardando los registros con horas. Además, al sólo comparar >= entonces te traerá todos los registros de ayer pero también los registros de hoy. intenta con esto:
Código SQL:
Ver originalSELECT a.DATETIME, a.OBJ, a.EXCHANGE_ID, a.ACCLOAD, a.NSCAN
FROM STATDBA.a
WHERE
a.DATETIME >= to_date(to_char(sysdate - 1, 'dd/mm/yyyy'), 'dd/mm/yyyy') AND
a.DATETIME <= to_date(to_char(sysdate - 1, 'dd/mm/yyyy')||' 23:59:59', 'dd/mm/yyyy hh24:mi:ss')
Lo que hago aquí es quitarle las horas a la fecha y formar un rango entre las 00:00:00 hrs del día anterior hasta las 23:59:59 del mismo día, puedes comprobar las conversiones así:
Código SQL:
Ver originalSELECT to_char(to_date(to_char(sysdate - 1, 'dd/mm/yyyy'), 'dd/mm/yyyy'), 'dd/mm/yyyy hh24:mi:ss') inicial,
to_char(to_date(to_char(sysdate - 1, 'dd/mm/yyyy')||' 23:59:59', 'dd/mm/yyyy hh24:mi:ss'), 'dd/mm/yyyy hh24:mi:ss') final
FROM dual;
Espero que te sirva el código
Saludos
Leo.