• ベストアンサー

Accessで○○以下のデータを合計することは出来ますか?

Microsoft Access2000を使っています。  ID  サイズ  数量  01    9     20  02   10     30  03   20     40 こういったテーブルがあったとして、それを クエリで、サイズが10以下・11以上で 判別して、数量を合計する、という事は出来るのでしょうか? 以下のような結果を出したいのです。  サイズ  数量  10以下   50  11以上   40 そのようなことが出来るのでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

クエリのフィールドに、 Iif([サイズ]<=10, "10以下", "11以上") と記述してください。 そうすると、10以下、11以上というサイズで集計されます。 #めんどうくさいので、10以下、それ以外ってしちゃいました(^^;;

eco2002
質問者

お礼

お礼が遅くなって申し訳ありません。 無事できました!ありがとうございました^^

その他の回答 (1)

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.2

区切りが一つの場合や、区切りの大きさがバラバラの場合は #1の方の言われるようにIIf関数やSwitch関数を使うことができます。 区切りが複数で且つ一定の場合はPartition関数が使用できます。 Partition(number, start, stop, interval) 上記で10ずつ区切るなら Partition([サイズ], 1, 20, 10) で1~10,11~20になります。

eco2002
質問者

お礼

大変参考になりました。ありがとうございました! お礼がおそくなってすいませんでした。

関連するQ&A

  • アクセス

    アクセスでテーブル上で、   単価 数量 金額    3 5 15 のように単価、数量いれると金額が合計されるテーブルができますか? クエリはつかわないで・・

  • Access2003 一つのクエリで結果を出したい

    お世話になります。 下記テーブルを紐付けてクエリを作成します(Access2003)。 受注テーブル  ・ID  ・コード  ・数量 検品テーブル  ・ID  ・コード  ・検品フラグ マスターテーブル  ・ID  ・コード  ・印刷フラグ 検品テーブルのレコードは、受注テーブルの数量合計が展開されたレコード数となります。例えば、AAAというコードで数量合計が8の場合、検品テーブルではAAAのレコードが8レコード存在することになります。 但し、マスターテーブルの印刷フラグがYesとなっているものは、数量がいくつあっても受注テーブルは1レコード作成されます(数量合計で展開しない)。  受注テーブル   ID コード 数量   1  AAA   5   2  AAA   3   3  BBB  100  検品テーブル   ID コード 検品フラグ   1  AAA   Yes   2  AAA   Yes   3  AAA   Yes   4  AAA   Yes   5  AAA   Yes   6  AAA   Yes   7  AAA   No   8  AAA   Yes   9  BBB   Yes  マスターテーブル   ID コード 印刷フラグ   1  AAA   No   2  BBB   Yes こんな感じです。 そこで各テーブルをコードで紐付けてグループ化し、検品フラグYesで抽出した状態で以下の結果を表示出来るようにしたいところです。 コード 数量合計  AAA   7  BBB  100 要するに印刷フラグがYesのものは受注テーブルの数量合計を表示し、それ以外は検品された数を表示させたいと考えています。 あらかじめ受注テーブルでコードでグループ化し、数量の合計を算出するクエリ(※1)を作成し、そのクエリと検品テーブル、マスターテーブルを紐付けたらうまく表示出来ました。 ※数量合計はIIFで印刷フラグ=Yesの場合は※1の数量合計を、Yesではない場合は検品テーブルのレコードカウント数を表示。 しかし、できれば一つのクエリで上記の結果を表示させたいのですが、可能なのでしょうか。 ご教授お願い致します。

  • Accessにてテーブルが異なるデータの引き算

    Access に異なるテーブルに収められているデータの「引き算」ほ方法をお教えください。 只今作成しているシステムは、簡単な在庫管理システムです。 今後、拡張していくこともあり得るという前提で各テーブルを作成しました。 作成したテーブルは以下のとおりです。 仕入先テーブル「仕入先ID・仕入先名・フリガナ・〒・住所1・住所2・TEL・FAX」 材料テーブル「材料ID・材料名」(単価はその時々で変わってくるのであえてここでは設定していません) 仕入テーブル「仕入ID・日付・仕入先ID・材料ID・仕入数量・単価」 払出テーブル「払出ID・日付・材料ID・払出数量」 在庫確認クエリにて以下の設定を行いました。 材料テーブルより「材料ID・材料名」 仕入テーブルより「仕入数量」 払出テーブルより「払出数量」 を設定し演算にて「在庫: Sum(Nz([仕入数量],0)-Nz([払出数量],0))」を入力しました。 データシートビューにて確認したところ、お互い発生した回数分だけ足されてしまい正確な在庫数量が表示されません。 例 ==================== 9/1 仕入数量 100 9/2 払出数量 50 9/3 仕入数量 100 9/4 払出数量 50 9/5 仕入数量 100 ==================== とした場合に、仕入数量600 払出数量300 となってしまいます。 以下は「SQLレビュー」の内容です。 SELECT 材料.材料ID, 材料.材料名, Sum(仕入.仕入数量) AS 仕入数量の合計, Sum(払出.払出数量) AS 払出数量の合計, Sum(Nz([仕入数量],0)-Nz([払出数量],0)) AS 在庫 FROM (材料 INNER JOIN 仕入 ON 材料.材料ID = 仕入.材料ID) INNER JOIN 払出 ON 材料.材料ID = 払出.材料ID GROUP BY 材料.材料ID, 材料.材料名; 解決方法をご享受くださいますようよろしくお願いいたします。

  • ACCESS教えて下さい。

    こんにちは。 ACCESSで今データーベース作ってます。 初心者なのですが、 売上管理の為 テーブルを作成 ID 数量 単価 金額 を作成し、入力(フォーム)で数量と単価をいれると自動計算できるようにしたいのです。 今までは、合計をクエリーで作成してました。計算は出来るのですが、テーブルで合計が入力されないし、その金額を次利用しようとしても、使えません。 数量*単価⇒の値を金額へ保存していきたいのですが・・。 宜しくお願いします。

  • Access 切り捨て合計クエリ

    Accessのクエリにて以下の集計・抽出を作成したいです。 抽出クエリの条件 (1):テーブルから商品名フィールで商品で始まるレコードを抽出する (2):抽出したレコードの数量フィールドの値を2000で割る (3):割り算後、小数点以下(1未満)が発生した場合は、0とする。 集計クエリの条件 (4):抽出クエリの条件式(1)~(3)を実施したのち、商品ごとに切り捨て後の整数を合算する ※数量が2000以上のレコードを抽出したいです。 どのようにすればよろしいでしょうか?

  • Access2003 合計値の求め方について

    Acdess超初心者です。ご存知の方がいらっしゃいましたらお教え下さい。 Access2003で請求書を作成しております。 メインテーブル 宛名、敬称、発行日、請求番号、件名、課税区分、小計、消費税、合計 サブテーブル  請求番号、項番、工事名、数量、単価 サブテーブルを基に作成したクエリ 請求番号、項番、工事名、数量、単価、金額 メインテーブルの請求番号とサブテーブルの請求番号は1対多のリレーションを組んでいます。 メインテーブルとクエリを基にフォームを作成して、メインフォーム(レコードソースはメインテーブル) 上にサブフォーム(レコードソースはクエリ)を配置しています。 サブテーブルの金額の合計をメインフォーム上の「小計」で求めたいのですが、方法が分かりません。 どのように作成するとメインフォーム上の「小計」でサブフォームの金額合計を求めることができるか お教え下さい。 初歩的な質問で申し訳ありませんが何卒よろしくお願い致します。

  • アクセスの合計について

    デ-タに 商品コ-ド|支店名|数量|        1111  | 東京 |10 1111  | 大阪 |20 1111  | 神戸 |30  ~ 9999   | 東京 |10  9999   | 大阪 |20   9999   | 神戸 |30   アクセス クエリ-で 商品コ-ド 毎の 東京+大阪の数量を合計したいのですが組み方を指導願います 

  • 更新クエリで合計金額を入れたい

    アクセスのテーブル1を作成しました。 ID    日付    金額    合計金額 1     6/1     ¥100 2     6/1     ¥200 3     6/2     ¥150 4     6/2     ¥300 (合計金額はカラ) そして、日別の合計を出すクエリ1を作成しました。 SELECT [テーブル1].日付, Sum([テーブル1].金額) AS 金額の合計 FROM テーブル1 GROUP BY [テーブル1].日付; 元のテーブルの合計金額の列に、クエリで表示した金額の合計を更新クエリで入れようとすると、 「 更新可能なクエリであることが必要です。」となります。 更新クエリのSQL文は UPDATE クエリ1 INNER JOIN テーブル1 ON [クエリ1].日付 = [テーブル1].日付 SET [テーブル1].合計金額 = [クエリ1]![金額の合計]; です。 ヘルプの内容の 一対多リレーションシップの '一' 側のフィールドを更新するクエリを実行しようとしました。 読み取り専用で開いているデータベースのクエリで、古い OpenQueryDef メソッドで使用しています。 には該当してないのですが(リレーションシップを組んでないし、四方チリ専用で開いてないし) どうすれば元のテーブルに合計金額を入れられるのでしょうか? 結果的に ID     日付     金額     合計金額 1     6/1     ¥100     300 2     6/1     ¥200     300 3     6/2     ¥150     450 4     6/2     ¥300     450 にしたいです。

  • ACCESS 複数テーブルの各合計値を期間を指定して算出、閲覧する方法について

    私はACCESS初心者です。会社用で日々の在庫数量を閲覧出来る仕組みを作成しております。 標題の件で行き詰ってしまい、皆様のお力添えを頂きたく、投稿させて頂きました。 現在の設定は下記の通りです。 部品情報テーブル: ・ID(主キー) ・部品番号 仕入履歴テーブル ・ID(主キー) ・部品番号 ・仕入数量 ・仕入日 生産履歴テーブル ・ID(主キー) ・部品番号 ・生産数量 ・入庫日 販売履歴テーブル ・ID(主キー) ・部品番号 ・販売数量 ・販売日 この後、下のようなクエリ(フォーム)で期間を指定して、 それぞれの合計値の算出・閲覧と、在庫数量を算出したいと考えております。 在庫数量確認クエリ(フォーム) ・期間指定 開始~終了 ・部品番号 ・(指定期間の)仕入数量合計(1) ・(指定期間の)入庫数量合計(2) ・(指定期間の)販売数量合計(3) ・在庫数量:([(1)]+[(2)])-[(3)] 例で御説明致しますと、 部品番号:A (仕入履歴テーブル)仕入日、数量: 8月 1日 10個 8月10日 10個 (生産履歴テーブル)入庫日、数量: 8月 2日 20個 8月15日 20個 (販売履歴テーブル)販売日、数量: 8月 5日 30個 8月18日 30個 この時、期間指定「8月1日~8月19日」で設定し、 (仕入10+10)+(入庫20+20)-(販売30+30)=(在庫 0) を成り立たせたいのです。 複数のテーブルに「日付」がある為、どのようにBETWEENを設定をすれば良いか、 また、期間を指定した時に各テーブルの数量を合計で算出するには、 どのようなクエリ設定をすれば良いのでしょうか。 何卒アドバイスを頂けます様、お願い申し上げます。

  • Access2つのテーブルの差額を出すピボット

    Access2007を使用しています。 以下のような2つのテーブルがあります。 <テーブルA> 区分 品番 金額  数量 A  001 10000  10 A  S12 5000   5 A  002 8000   8 A  001 6000   6 <テーブルB> 区分 品番 金額  数量 B  001 2000  2  B  S12 3000  3 このデータを元に、以下のような結果をピボットで表示したいと思っています。       区分       A  |  B   |合計 品番  数量 金額|数量 金額 |数量 金額 差額(A-B) 001 16 16000| 2 2000 | 18 18000 14000 002 8 8000 |      | 8  8000  8000 S12 5 5000 | 3 3000 | 8  8000  2000 テーブルAとBをユニオンクエリでまとめ、ピボットを作って みたのですが、差額の部分が出せず・・・ どうぞよろしくお願いします。

専門家に質問してみよう