Microsoft Query からクエリを実行すると正しい結果が得られますが、SQLPLUS(Oracle) からクエリを実行すると正しくない結果が得られます。
Microsoft Query は次のとおりです (6 月 12 日午後 3 時から 6 月 13 日午前 12 時までの正しい結果が表示されます。
SELECT
NAME,
CIM,
NUM_of_People,
STARTDATETIME
From Table
WHERE (SUSTAINED_FLAG=1)
AND (PLANNED_FLAG=0)
AND (STARTDATETIME>{ts '2013-06-12 04:00:00'}
And STARTDATETIME<{ts '2013-06-13 12:00:00'})
Oracle では、間違った結果をもたらすこの句を使用しています。
6 月 13 日午前 12 時から午後 12 時までの日付のみのクエリ結果を表示しています。
SELECT
NAME,
CIM,
NUM_of_People,
TO_CHAR(STARTDATETIME,'MM/DD/YYYY HH:MI:SS') As STARTDATETIME
FROM OBVWH.
where BETWEEN To_Date(to_char(STARTDATETIME, 'DD-MON-YYYY')) >= To_Date('06/12/2013 16:00:00','MM/DD/YYYY HH24:MI:SS')
and To_Date(to_char(STARTDATETIME, 'DD-MON-YYYY')) <= To_Date('06/13/2013 12:00:00','MM/DD/YYYY HH24:MI:SS')
and sustained_flag = 1 and planned_flag = 0 ORDER BY STARTDATETIME ASC