2017-06-27 4 views
1

私はdatetimestampタイプの2つのフィールドを持っています。私はそれらの日付が発生する四半期に基づいてそれらを比較し、過去、同じ、または将来の四半期に発生するかどうかを判断する必要があります。2つの日付を比較して、四半期に基づいて前の日付、前の日付、前の日付、または前の日付を比較する方法は?

2フィールド:pay.check_dtとpay.done_in_dt。 pay.check_dtがpay.done_in_dateと比較して前回、同じ、または将来の四半期に発生しているかどうかを知りたい 当初私はto_Char(fieldname、 'Q-YYYY')を使用してcase文を変換することを考えましたが、彼らは文字列なので、私は数学的な比較にすることはできません。

ありがとうございました!

クレイグ

+0

Oracleのテーブルのフィールドがない、唯一の列があります。次に、* datetimestamp *型はありません。* date *と* timestamp *の2種類のデータ型があります。列はどのデータ型ですか?あなたがわからない場合は 'describe TABLENAME'を実行することができます。' TABLENAME'はあなたのテーブルの名前です。 – mathguy

答えて

2

TRUNC(date)機能を使用します。私は今、利用可能なDBを持たないdocumentation

、しかし、のようなもの:

TRUNC(pay.check_dt, 'Q') < TRUNC(pay.done_in_dt, 'Q') 
+0

これは過去のもので動作しますが、その後もいくつか追加しました。 'TRUNC(pay.CHECK_DT、' Q ')<> TRUNC(pay.done_in_date_DT、' Q ') TRUNC (pay.CHECK_D、 'Q')

関連する問題