- ベストアンサー
収入と支出の金額計算方法
- 金額の計算方法について説明します。特定のテーブルから収入と支出の5月分の合計を求める方法について解説します。
- テーブルから特定の期間の収入と支出を集計する方法について説明します。
- 収入と支出の差額を求める方法について説明します。select文を使用して、収入から支出を引いた値を計算することができます。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
どうしても縦(=別の行として)に表示したいですか? 横に並べる形でもいいなら、簡単なSQLで実現可能と思います。 select sum(case syuusi when '収入' then kingaku else 0 end) as 収入, sum(case syuusi when '支出' then kingaku else 0 end) as 支出, sum(case syuusi when '収入' then kingaku when '支出' then -kingaku else 0 end) as 収支 from suitoh_table where hiduke like '2007-5-%' and syuusi in('収入','支出') ;
その他の回答 (4)
- ikiss
- ベストアンサー率43% (34/79)
あああ、ごめんなさい!! 支出と収入のあとに'を入れておいてください。 連続投稿すみませんm(__)m
- ikiss
- ベストアンサー率43% (34/79)
下のSQL文、間違えました。 select sum(c.kingaku) from (select syuusi,sum(kingaku) from suitoh_table where hiduke like '2007-5-%' group by syuusi having syuusi = '収入 union all select syuusi,sum(kingaku) * -1 from suitoh_table where hiduke like '2007-5-%' group by syuusi having syuusi = '支出) c group by c.syuusi;
- ikiss
- ベストアンサー率43% (34/79)
テスト環境がないので、実験的なこともかねて。 以下のSQLでは駄目ですかね? select syuusi sum(kingaku) from c group by c.syuusi (select syuusi,sum(kingaku) from suitoh_table where hiduke like '2007-5-%' group by syuusi having syuusi = '収入 union all select syuusi,sum(kingaku) * -1 from suitoh_table where hiduke like '2007-5-%' group by syuusi having syuusi = '支出) c;
お礼
遅くなりましたが、回答ありがとうございました。
- TA-HT81S
- ベストアンサー率39% (72/184)
収入と支出のそれぞれの合算を、2レコードで取り出すように期待されている以上、できないと思います。 支出をマイナス値でセットしておけばあるいは…とも思いましたが、2レコードで取り出すことを期待されている以上、変数にセットして演算する必要があると思います。
お礼
遅くなりましたが、回答ありがとうございました。
お礼
遅くなりましたが、回答ありがとうございました。