2012-04-18 14 views
1

リモート・オラクル・データベースからデータを読み取っています。私はいくつかの時間枠の間にすべてのデータを照会したいと思います。私は実際に真夜中と現時点の間に照会したいと思っていました。私が使用していたクエリ:特定の日付時刻の間にすべてのデータを取得する

TO_DATE(to_char(sysdate, 'MM-dd-yyyy')||'00:00:00','MM-dd-yyyy HH24:MI:SS') 
AND 
TO_DATE(to_char(sysdate, 'MM-dd-yyyy HH24:MI:SS'),'MM-dd-yyyy HH24:MI:SS') 

しかし、クエリ

select TO_DATE(to_char(sysdate, 'MM-dd-yyyy HH24:MI:SS'),'MM-dd-yyyy HH24:MI:SS') from dual 

18-APR-12ない時間を返しています。どうやって時間を得るの?

私が実行しています:

ALTER SESSION SET NLS_DATE_FORMAT='DD-MON-YYYY HH24:MI:SS'; 

しかし、私は、このたびにこの問題を克服するための他の方法を実行したくありませんか?

+0

私はあなたの2番目のクエリを実行するときにも同様に時間を得ています –

+0

@AmitBhargava私はいない:(そこにいくつかの問題があるようです – kinkajou

答えて

5

本当に何が表示されているかわかりません。
Oracleは、日付を表す数字として日付を保持しており、照会するときの表示方法は、NLSパラメータによって異なります。
時間が表示されないということは、時間がないことを意味するものではありません。クエリのように私はこのような何かしたい

:私は同じフォーマットで戻っ日に、文字列に日付をキャストには使用を見ないと

... BETWEEN trunc(sysdate) AND sysdate 

を...

関連する問題