私のクエリをフィルタリングしようとしているのは、ユーザが選択した期間(月または年)に依存します。 BIRTでパラメータを取得します。ユーザが選択したパラメータに依存するクエリをどのようにフィルタリングできますか?
私のクエリは次のとおりです。
SELECT DATE
FROM TABLE
WHERE Year(DATE) = Year(CURRENT_TIMESTAMP) AND Month(DATE) = Month(CURRENT_TIMESTAMP)
私の結果は次のとおりです。私は何をしようとしていること
DATE
2017-02-14
2017-02-14
2017-02-14
2017-02-14
2017-02-14
2017-02-14
2017-02-14
2017-02-01
2017-02-02
です:ユーザーが選択年、私はコメントで最後の条件を置けば、結果は次のようになります。
0:DATE
2017-02-14
2017-02-14
2017-02-14
2017-02-14
2017-02-14
2017-02-14
2017-02-14
2017-01-25
2017-01-26
2017-02-01
2017-02-02
2017-01-20
2017-01-20
2017-01-20
2017-01-20
2017-01-20
2017-01-20
2017-01-20
2017-01-20
2017-01-20
は、私のような場合に試してみました
CASE WHEN USER_PARAM = 'month' then Month(DATE) = Month(CURRENT_TIMESTAMP) END
は明らかに、これは私が試したOR/ANDのような、 良いではありません。
Year(DATE) = Year(CURRENT_TIMESTAMP)
OR ('USER_PARAM' = 'MONTH' AND Month(DATE) = Month(CURRENT_TIMESTAMP))
'USER_PARAM' = 'MONTH'
がtrueの場合 - 私はすべての年(ではない現在のもの)を持っているので>これが動作しません
Year(DATE) = Year(CURRENT_TIMESTAMP)
AND ('USER_PARAM' = 'MONTH' AND Month(DATE) = Month(CURRENT_TIMESTAMP))
'USER_PARAM' = 'MONTH'
これは動作していない偽>であれば、私は、任意のデータに
ありがとうございました!私はそれにブロックされていた...閉鎖しかしブロック – Bob