- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Sum関数を使った加算減算)
Sum関数を使用した加算減算
このQ&Aのポイント
- 再度、難しい問題に直面しました。顧客CDごとに合計を出し、POINT_KINDにより加算減算を行います。
- KOKYAKUTBLテーブルのKOKYAKU_CD、POINT_KIND、KOKYAKU_POINTを使用します。
- 取得結果はKOKYAKUCD、POINT_KIND、POINTの3つのカラムで、顧客CDごとの合計を計算します。POINT_KINDが2と3の場合に減算を行いたい場合は、全ての値を合計した後に減算します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1です。訂正です。 最終行のあとに、 GROUP BY A.KOKYAKU_CD を追加しないとダメかも知れません。 または、 SELECT KOKYAKU_CD, SUM(DECODE(POINT_KIND,'2',POINT * -1, '3',POINT * -1, ,POINT)) AS POINT_SUM FROM KOKYAKUTBL WHERE KOKYAKU_CD = '00001' GROUP BY KOKYAKU_CD でも良いと思います。(こちらの方が良いかな。)
その他の回答 (1)
- kabilunlun
- ベストアンサー率34% (155/446)
回答No.1
DECODEを使ってできませんかね。 SELECT A.KOKYAKU_CD, SUM(DECODE(A.POINT_KIND,'2',A.POINT * -1, '3',A.POINT * -1, ,A.POINT)) AS POINT_SUM FROM (SELECT KOKYAKU_CD, POINT_KIND, SUM(KOKYAKU_POINT) AS POINT FROM KOKYAKUTBL WHERE KOKYAKU_CD = '00001' GROUP BY KOKYAKU_CD, POINT_KIND ) A
お礼
ありがとうございました。おかげでうまくいきました。が、また問題に直面しました。改めて質問させていただきますので、よろしくお願いします。