2017-02-23 9 views
-2

Oracleを使用して、私は最初と半年のデータの合計を表示するクエリを書きたいと思います。
半年ごとの合計表示

私のデータ検索条件が2016/02〜2017/12の場合。

以下のような結果を表示したいと思います。
1.値段は2016/01/01〜2016/06/30 - 前半は
2.価格は2016/07/01〜2016/12/31から - 下期は
3. 2017/01/01から2017/06/30までの価格 - 上半期の行
4.価格は2017/07/01〜2017/12/31から - 下期の行

+0

'13分の2016/31'。 。 ? – GurV

+0

申し訳ありません、感謝...更新 –

答えて

1

フォーマットモデル'Q'を使用して、四半期をフェッチすることができます。そして、それを以下のように半年ごとに計算するように操作します。

TO_CHAR(day,'YYYY')|| (CASE WHEN(TO_CHAR(day,'Q')<=2) THEN 1 ELSE 2 END) 

全クエリは

SELECT TO_CHAR(day,'YYYY')|| (CASE WHEN(TO_CHAR(day,'Q')<=2) THEN 1 ELSE 2 END), 
     SUM(price) 
from my_data 
GROUP BY TO_CHAR(day,'YYYY')|| (CASE WHEN(TO_CHAR(day,'Q')<=2) THEN 1 ELSE 2 END) 
ORDER BY 1 

サンプル出力のようになります:

20161 62700 
20162 4095 
20171 163075 
20172 36945 
関連する問題