
以下のようなテーブルがあります。
hiduke | syuusi | tekiyou | kingaku | bikou
2007-5-8 | 収入 | 給料 | 48000 | バイト代
(以下数十件続く)
このテーブルから、次のようにして収入と支出の5月分の合計を求めました。
select syuusi,sum(kingaku) from suitoh_table where hiduke like '2007-5-%' group by syuusi;
syuusi | sum
収入 | 61000
支出 | 15080
するとこのように表示されるのですが、ここからさらに「収入-支出」と計算するにはどうすればいいのでしょうか?
最初のselect文の段階で、収入-支出の計算までさせたいのですが・・・。
No.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('収入','支出')
;
No.3
- 回答日時:
下の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;
No.2
- 回答日時:
テスト環境がないので、実験的なこともかねて。
以下の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;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
count関数の値をwhere句で使用...
-
OUTER JOIN とgroup by
-
重複レコードの抽出
-
テーブルの最後(最新)のレコー...
-
SQLローダーCSV取込で、囲み文...
-
単一グループのグループ関数で...
-
複数のテーブルから値を合計出...
-
データ
-
group byの並び順を変えるだけ...
-
Oracleで「文字が無効です」の...
-
SQL*Loader Append
-
SQL文 複数実行
-
アクセスのレポートでレコード...
-
select文の実行結果に空白行を...
-
24時間以内に更新されたデータ...
-
1の行を固定した上でVBAを用い...
-
SQL副問い合わせ内のエイリアス
-
PL/SQLでフェッチでNULLの項目...
-
oo4oを使ったOracleへのデータ...
-
固定長データのテキストファイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
count関数の値をwhere句で使用...
-
小数点以下桁数が最大の値に小...
-
結合したテーブルに名前をつけ...
-
OUTER JOIN とgroup by
-
初心者、SQLで分からない問題が...
-
MySQLで最小値
-
日本語で、likeを使うと値が正...
-
mysql について質問です
-
重複レコードを処理しない
-
同一カラム名でjoinしたところ...
-
selectの行を共通に使いたい
-
東京とその他で集計するには
-
初歩的な質問ですが、教えてく...
-
複数テーブルの集計その2
-
group by のソート
-
集計について
-
Select文を含むUpdateの記述方...
-
市区町村別の件数をカウントす...
-
( Mysql ) GROUP BY節について
-
【PHP5+MySQL5】 count(*)の値...
おすすめ情報