- ベストアンサー
【SQL】違うフィールド同士の集計をしたい
表記の件ですが、SUM関数はフィールドが同じで違うレコードを集計していくのですが、そうではなく、違うフィールド同士を集計したいのですが、どうしたらいいのかわかりません。 (※アクセスなら可能なのかもしれませんが。) a b c 100 200 300 上記の場合、a+b+c= 600 という戻り値が欲しいのです。 恐れ入りますが、どなたか(可能不可能でもOK)ご教授ください。 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- PL/SQLでの、集計→結合→集計の仕方
いつもお世話になってます。 以前こちらで質問をさせていただいたのですが、 http://soudan1.biglobe.ne.jp/qa5076670.html さらに分からないことが出てきたので、また質問させていただきます 【テーブル1】 (年月日) (班) (回数) (秒) (種類) 20090401|aaa| 10| 100 A 20090401|aaa| 20| 200 A 20090501|bbb| 10| 150 B 20090501|bbb| 20| 100 B 20090401|ccc| 10| 100 C 20090401|ccc| 30| 250 C 20090401|ddd| 15| 200 A : : : まずこれを集計し、件数を追加して (班) (回数) (秒) (件) (種類) aaa| 30| 300| 2 A bbb| 30| 250| 2 B ccc| 40| 350| 2 C ddd| 15| 200| 1 A : : : : というようにまとめ、 【テーブル2】 (年月) (班) (円) 200904| aaa| 1000 200905| bbb| 1500 200904| ccc| 2000 200904| ddd| 1200 : : : というテーブルと結合して (年月) (班) (回数) (秒) (円×件) (種類) 200904| aaa| 30| 300| 2000 A 200905| bbb| 30| 250| 3000 B 200904| ccc| 40| 350| 4000 C 200904| ddd| 15| 200| 1200 A : : : : : とするのが前回までで ここから更に種類で集計をして (年月) (回数) (秒) (円×件) (種類) 200904 | 45| 500| 3200| A 200905 | 30| 250| 3000| B 200904 | 40| 350| 4000| C としたいのですが、 SELECT テーブル2.年月, テーブル1集計.種類, sum(テーブル1集計.回数), sum(テーブル1集計.秒数), sum(テーブル1集計.件数 * テーブル2.円) FROM (SELECT 年月日, 班, 種類, sum(回数) 回数, sum(秒数) 秒数, count(*) 件数 FROM テーブル1 GROUP BY 班,種類,年月日) テーブル1集計,テーブル2 WHERE テーブル1集計.班=テーブル2.班 GROUP BY 種類,テーブル2.年月; としたところ、最終的に出力したいテーブルの集計結果の (回数) (秒) (円×件)が正しいものより多くなってしまいました。 長くなって申し分かりません。 どこが間違っているのか、わかる方いらっしゃいましたら 教えていただけないでしょうか??
- 締切済み
- Oracle
- access2007 レコードの集計がしたい
アクセス2007で出席簿を作成しています。 先頭のレコードに1日~31日があり、最後に合計欄。(対象の1カ月分の出席日数) フィールドには氏名を記載し、最後に合計欄。(その日の合計出席人数) これをチェックボックス形式にし、マウスのクリックで記入できるようにしています。 今までエクセルで行っていましたが、アクセスを導入したのをきっかけに作成に挑戦しています。 エクセルではsum関数で簡単に出来たのですが、アクセスではそうもいかないようで四苦八苦しています。 フィールドの集計は出来たのですが、レコードの集計はどの様にしたらできますか? 氏名 1日 2日 … 31日 計 Aさん □ □ □ 25←この部分の合計 Bくん □ □ □ 10← 同上 … 計 31 20 28 ←このレコードの集計は出来た。 イメージ的にこのような感じです。 また、将来的にこの合計の部分を別のテーブルに関連付けて行きたいと思っています。 まずは集計の所での方法を教えて下さい。
- ベストアンサー
- オフィス系ソフト
- ACCESS レポートでページごとに抽出して集計する方法
ACCESS2002です。 あるDBを作りました。 レポートにて各ページに全体の集計金額の累計とページごとの集計金額の累計を表示したいです。特にページごとの集計はあるフィールド(AとBあるうちAだけ等)の分だけの金額を抽出して表示させたいです。 全体の集計金額の累計はSUM関数を使ってできましたが、条件つきのほうは、複雑すぎてどのようにしたらよいかわかりません。 教えてください。
- 締切済み
- オフィス系ソフト
- アクセス レポート作成時に集計した数値の並び替えは?
初心者の初歩的な質問ですが、 アクセスのレポートについて教えてください。 会社名 注文日 数 A社 H18.10.11 10件 B社 H18.10.20 10件 B社 H18.10.21 5件 C社 H18.10.21 5件 このようなデータをグループ化してレポートで出力しています。 10月分集計表で詳細データを非表示にして 会社名(グループヘッダー)集計(グループフッター) A社 10件(SUMで集計) B社 15件(SUMで集計) C社 5件(SUMで集計) ここで質問ですが、集計した件数を昇順(又は降順)で並び替えることはできないのでしょうか? 素人考えで作ったので、うまくいきません。 よろしくお願いします。
- 締切済み
- オフィス系ソフト
- SQL文でクロス集計をしたい
アクセスでクロス集計のSQL文で作りたいと思っています。 このようなデータがあります 年月 支払先 数量 金額 201301 A 10 1000 201302 A 5 500 201302 B 20 2000 201301 C 10 3000 201303 C 15 1500 このデータを下記のように表示したいのですが、 分からなくて困っています。 支払先 データ 201301 201302 201303 A 数量 10 5 A 金額 1000 500 B 数量 20 B 金額 2000 C 数量 10 15 C 金額 3000 1500 合計 数量 20 25 15 合計 金額 4000 2500 1500 どのようにすれば実現出来ますか? 今は、 SELECT 支払先, "数量" AS データ, Sum(IIf([年月]='201301',[数量],0)) AS 201301, Sum(IIf([年月]='201302',[数量],0)) AS 201302, Sum(IIf([年月]='201303',[数量],0)) AS 201303, FROM T_データ GROUP BY 支払先; のクロス集計を 数量と金額、数量の合計と金額の合計でクロス集計をしたクエリを UNIONで実現しています。 出来れば数量と金額は1つのクエリで実現したいと思いますが方法があれば教えて頂きたい と思います。 どうぞ、よろしくお願い致します。
- ベストアンサー
- その他(データベース)
- Access の集計について教えて下さい。
Access の質問ばかりしてすみません。 今度は集計について教えて下さい。 レポートで集計したいのですが、SUMを使ったところパラメーターが出ました。 テキストボックス合計 ・A・Bがあります。 テキストボックスAには=合計-Bの式が入っています。 その下に列ごとの集計を出したいのでSumを使ったところ、Aの集計だけ出来ません。 どのようにすると集計出来ますか? 教えて下さい。 よろしくお願い致します。
- ベストアンサー
- その他MS Office製品
- IF関数で結果を出したセルの集計
お世話になります。 出社時間 退社時間 昼休 勤務時間 A1に9:00 B1に18:00 C1に1:00 D1に=IF(B1-A1-C1=0,"",B1-A1-C1) と下まで続いてD10セルでSUM関数で集計しようとすると合計値が明らかにおかしくなります。こちらで調べたところ「""」があるとSUM関数は使えない?と回答を見つけたのですが具体的な解決法が見つからず質問させて頂きました。書式設定を時刻にしている為、0にして非表示ができず、何かよい方法があればご教授下さいませ。 よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- Access:クエリーにて集計後に文字列結合したい。
Accessのクエリーでレコードのグループ化を行っている状態で、あるフィールドに対してだけ文字列の結合を行いたいのですが、集計部分をどのように指定すればよいかわからず困っています。 イメージとしては、SQLビューにて、グループ化されたレコードの合計が、 SUM([テーブル名].[フィールド名]) で求められる様に、 エクセルの文字列結合関数 CONCATENATE([テーブル名].[フィールド名]) が使いたい、という感じです、、 Accessにおける文字列結合は"&"を使うとありましたが、この場合どのように記述するべきでしょうか?
- ベストアンサー
- その他(データベース)
お礼
目からウロコ、、。 難しく考えすぎていました。 bin-chanさん どうもありがとうございます☆