1

昨日の午前6時から今日の午前6時の間に発生したデータをクエリしようとしています。

連結に問題があります。

これは私が試したことです。

Where update_time between date(CURRENT DATE,'mm/dd/yyyy 06:00:00')- 1 DAYS 
                      and date(CURRENT DATE,'mm/dd/yyyy 06:00:00')
4

1 に答える 1

0

これを試して:

WHERE UPDATE_TIME 
BETWEEN TIMESTAMP(CHAR(CURRENT DATE,ISO) || ' 06:00:00') - 1 DAY
AND TIMESTAMP(CHAR(CURRENT DATE,ISO) || ' 06:00:00')

X-Zero のコメントに答えるために更新されました。

DB2 関数CHAR(CURRENT DATE,ISO)は現在の日付を取得し、それを形式の文字ストリングに変換しISOます。今日の日付を取得すると、CHAR 関数は「2012-09-18」を返します。

次に、時間文字列を日付文字列に連結 (||) します。時刻ストリング内のスペースにより、文字 DB2 タイム・スタンプが正しい形式で作成されます。"2012-09-18 06:00:00".

最後に、DB2 関数TIMESTAMPは文字 DB2 タイム・スタンプを取得し、それを実際の DB2 タイム・スタンプに変換します。

于 2012-09-17T18:38:38.783 に答える