• ベストアンサー

Sum・クエリ・テーブルの特定の合計をフォームのテキストボックスに表示したい

テーブル1に番号フォールドと金額フィールド(通貨型)があり、 番号   金額 001    \1 002    \2 003    \3 ・ ・ ・ とデータが入力されています。 フォーム1にテキスト0を設置しました。 そこに「番号001の金額フィールドの合計額を表示したい」のですが どうすればいいのでしょう? SQL文で言うと SELECT テーブル1.番号, Sum(テーブル1.金額) AS 金額の合計 FROM テーブル1 GROUP BY テーブル1.番号 HAVING (((テーブル1.番号)="001")); なので それを テキスト0のコントロールソースに "SELECT テーブル1.番号, Sum(テーブル1.金額) AS 金額の合計 FROM テーブル1 GROUP BY テーブル1.番号 HAVING (((テーブル1.番号)="001"));" と入れましたが ただテキストボックスにSQL文が表示されるだけでした。 (番号フィールドは主キーではなく重複するレコードもあります) どうすれば、いいのでしょうか? ご教授よろしくお願い致します。

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

  • ベストアンサー
  • bonaron
  • ベストアンサー率64% (482/745)
回答No.2

#1 です。 寝ぼけていました。 DSum 関数ですね。

lkhjlkhjlk
質問者

お礼

ありがとうございます。 DSum で調べてみます。

その他の回答 (1)

  • bonaron
  • ベストアンサー率64% (482/745)
回答No.1

DLookUp 関数について調べてください。

lkhjlkhjlk
質問者

お礼

ありがとうございます。調べてみます。

関連するQ&A

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

    アクセスのテーブル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 にしたいです。

  • SQL文 合計と、特定の値を取り出す

    テーブル名:料金表 ID  項目CD  金額 ------------------------- 1   101   1000 1   102   2000  1   103    100 2   101   1000 2   102   2000 2   103    50 3   101   1000 3   102   2000 上記のテーブルがあります IDと、金額の合計と、項目CDが103のものだけ金額をだしたいのです 理想SELECT結果 ID  合計  項目CD:103 ------------------------- 1   3100   100 2   3050    50 3   3000    0(もしくはnull)  select ID,sum(金額) as 合計 from 料金表 where ID in(1,2,3) group by ID,金額 でIDと合計までは出せました 特定の項目の値を取り出すのはどうしたらいいでしょうか?

  • アクセス クロス集計クエリ 縦の合計

    テーブル1には 会社名 取引日 金額 A社 2014/01/01 ¥100 B社 2014/01/02 ¥200 A社 2015/01/01 ¥500 というデータがあります。 このテーブル1を基にクロス集計クエリで TRANSFORM Sum([テーブル1].[金額]) AS 金額の合計 SELECT [テーブル1].[会社名], Sum([テーブル1].[金額]) AS [合計 金額] FROM テーブル1 GROUP BY [テーブル1].[会社名] PIVOT Format([取引日],"yyyy"); というクエリを自動生成しました。 この時、横の合計ではなく縦の合計(年ごとの合計)を表示するには良いでしょうか? サブクエリというのを使うようですが、どうすればいいかわかりませn。 よろしくお願いします。

  • ユニオンクエリで0と表示される。

    教えてください。 4つのテーブルをユニオンクエリでひとつにしたく以下のようにSQLに書きました。 SELECT ID AS フィールド1 ,No AS フィールド2, Remark AS フィールド3 FROM テーブル1 UNION ALL SELECT ID,No,Remark FROM テーブル2 UNION ALL SELECT ID,No,Remark FROM テーブル3 UNION ALL SELECT ID,No,Remark FROM テーブル4 フィールド2のNOには数字が入っているのですがフィールド2の列にはすべて0と表示されて数字がででてきません。ID(オートナンバー型)とRemark(短いテキスト型)はちゃんと表示されます。もとのテーブル1と2のNoは数値型 テーブル3と4のNoは短いテキスト型です。なにが原因でどうしたら数値が表示されるようになりますか?

  • Access97のクエリーでのDISTINCTROW について

    Access97のクエリーでのDISTINCTROWの解読の仕方がわからず困っています。 SELECT DISTINCTROW テーブル1.番号, テーブル1.D名, テーブル1.E名, FROM テーブル1 WHERE (((テーブル1.番号) In (SELECT [番号] FROM [テーブル1] As Tmp GROUP BY [番号] HAVING Count(*)>1 ))) ORDER BY テーブル1.番号; このSQL文はどういう条件のデータを選択する意味なのでしょうか。 教えてください。

  • 引き算のSQL

    このSQLどこがおかしいのでしょうか? -------- SELECT uid, SUM( `in` ) AS `in合計` , SUM( `out` ) AS `out合計` , ( `in合計` - `out合計` ) AS `残高` FROM `points` GROUP BY uid HAVING uid =1 -------- Unknown column 'in合計' in 'field list' もちろん、テーブルには'in合計'なる列名は無いのですが、as ~ ではダメ? 検索対象はuid=1 この人の、inポイントを合計する。 outポイントを合計する。 inポイント合計 - outポイント合計 = 残高ポイント を求める。 ということをしたいのですが、どこが間違っているのでしょうか? DB: MySQL

  • フォームのテキストにテーブルの合計額を表示したい

    「T合計」テーブルの「数字」フィールドにいくつかのレコードに数字が入力されています。 このT合計の合計額をフォームのテキストボックスに表示させたいのですがうまくできません。 クエリ1を作成し、式1: Sum(T合計!数字)としたらうまく表示できました。 フォームのテキスト0のプロパティの「コントロールソース」に「=クエリ1!式1」としたら「#Name?」になってしまいます。 また、「コントロールソース」に「=Sum([T合計]![数字])」といれたら「#エラー」になってしまいます。 そもそも「コントロールソース」に入力することが間違えなのでしょうか? どうすればテキストボックスにT合計の合計額を表示することができるのでしょう? よろしくお願い致します。

  • クエリで日付ごとに金額で集計したいのに

    サンプルで、テーブルに 日付    金額 2013/06/01    ¥1,000 2013/06/02    ¥1,500 2013/06/01    ¥2,000 というデータを作って、 SELECT [テーブル1].日付, Sum([テーブル1].金額) AS 金額の合計 FROM テーブル1 GROUP BY [テーブル1].日付; このようなクエリを作ると、 日付    金額の合計 2013/06/01    ¥3,000 2013/06/02    ¥1,500 こうなりますよね。 実際のデータで、日付と金額のフィールドだけ、テーブルから持ってきて、 日付はグループ化、金額は合計にしてるのに、 日付がグループ化されていません。 図を見てもらえばわかると思いますが、同じ日なのに合計額が合算されていません。 なぜなのかわかりません。 元のテーブルは、日付は日付型、金額は通貨型です。 サンプルと同じです。 よろしくお願いします。 他のフィールドに主キーがあります。

  • アクセス:クロス集計の抽出条件

    添付のようなテーブルがあり下記のSQLを実行するとクエリ1になるのですが、合計数に抽出条件を入れてクエリ2のように10個以下のものは表示しないようしたいと思います。 下記SQLをどのように直したらよいでしょうか。一つのクエリで行う方法を教えて下さい。 TRANSFORM Sum([テーブル1].個数) AS 個数の合計 SELECT [テーブル1].[くだもの], Sum([テーブル1].個数) AS 合計 FROM テーブル1 GROUP BY [テーブル1].[くだもの] PIVOT [テーブル1].月;

  • SQLの集計で「全て」の合計も表示したい

    SQLの集計について教えて下さい。DBはSQLiteかMySQLです(下記テストはSQLiteにて) 「meibo」テーブルから結果(1)を表示するにSQL文(1)で実現できました。 ●meiboテーブル name    type  univ ---------------------------------- 鈴木一郎  国立  東大 高橋ニ郎  国立  東大 田中三郎  国立  京大 山本四郎  公立  大阪府立大 佐藤五郎  私立  慶応大 小川六郎  私立  早稲田大 ●結果(1) type別の人数 type   合計 ------------------- 公立   1 国立   3 私立   2 ●SQL文(1) SELECT type, count(name) FROM meibo GROUP BY type ORDER BY type ; ここに「全ての合計」行を加えて結果(2)を表示したい場合、1つのSQL文で可能でしょうか? それともSQL文(2)のように2つの文で行なうか、SQL文(1)の結果をプログラム側で処理して全ての合計を得るなどするしかないでしょうか?(typeの「全て」は無くても構わない) もし1つのSQL文で可能ならどういう風になるのでしょうか? ●結果(2) type   合計 ------------------- 全て   6     ←この行を追加したい 公立   1 国立   3 私立   2 ●SQL文(2) SELECT type, count(name) FROM meibo ; SELECT type, count(name) FROM meibo GROUP BY type ORDER BY type ;

専門家に質問してみよう