Accessクエリでチームの最高得点とその日付、出した人を表示する方法

このQ&Aのポイント
  • Accessの初心者の方がクエリでチームの最高得点を出す方法と、その日付と出した人を表示する方法について教えてください。
  • 上記のテーブルにおいて、チームごとの最高得点とその日付、出した人を確認する方法をAccessのクエリを使って実現する方法について教えてください。
  • Accessの初心者ですが、上記のテーブルにおいて、クエリを使用してチームの最高得点とその日付、出した人を表示する方法を教えてください。
回答を見る
  • ベストアンサー

Accessのクエリで最小値の別のフィールドを表示する方法

Accessの初心者です。 以下のようなテーブルがあったとして、 ID 日付   チーム  氏名 点数 1 2008/11/1 チームA 田中 58点 2 2008/11/2 チームB 中村 62点 3 2008/11/4 チームK 村中 48点 4 2008/11/5 チームA 中田 59点 クエリで、チームの最高得点を集計(最大)で出します。 チーム 最高点 チームA 59点 チームB 62点 チームK 48点 そのとき、クエリの別のフィールドで最高点を出した日と、出した人間を表示するために、どのようにすればよいでしょうか。SQLを使用すればうまくいくでしょうか。 初心者はなはだしいのでざっくりとしすぎかもしれませんが、よろしくお願いします。

  • voran
  • お礼率46% (6/13)

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

  • ベストアンサー
  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.1

得点のテーブルを[得点]であるとします。 最高得点のクエリを保存して、これを [最高得点]とします。 クエリデザイナで[得点]、[最高得点] を[チーム]=[チーム]かつ[点数]=[最高点] で結合すれば、お望みの結果が得られるかと。 SQL一発でやるならこんな感じ。 ↓ select t.[日付],t.[氏名], MAXV.[チーム],MAXV.[最高点] from [得点.csv] as t inner join (select [チーム],max([点数]) as 最高点 from [得点.csv] group by [チーム] ) as MAXV on t.[チーム] = MAXV.[チーム] and t.[点数] = MAXV.[最高点] order by MAXV.[チーム]

voran
質問者

お礼

クエリデザインでの結合という観点が欠落しておりました。 おかげさまでうまくいきました。ありがとうございます。

関連するQ&A

  • Accessのユニオンクエリーで3つのクエリを集計

    Accessのユニオンクエリーで3つのクエリを集計したいのですが Aクエリ 氏名  役員名  就任月  任期 山田   会長   24    1 田中  副会長   24    1 Bクエリ 氏名  役員名  就任月  任期 山田  副会長   12    0 田中   理事   24    1 Cクエリ 氏名  役員名  就任月  任期 山田   会長    24    1 田中  副会長   24    1 結果 氏名  役員名  就任月  任期 山田   会長    48    2 山田  副会長   12    0 田中  副会長   48    2 田中   理事   24    1 このような結果を得ることは出来ますでしょうか? SELECT [氏名], [役員名],[就任月],[任期] FROM [Aクエリ名] UNION SELECT [氏名], [役名],[就任月],[任期] FROM [Bクエリ名] UNION SELECT [氏名], [役名],[就任月],[任期] FROM [Cクエリ名]; このように記述すると 氏名  役員名  就任月  任期 山田   会長   24    1 山田  副会長   12    0 山田   会長   24    1 田中  副会長   24    1 田中   理事   24    1 田中  副会長   24    1 このような結果になってしまうのですが・・

  • アクセスのクエリでパラメータを表示させない方法は?

    超初心者の質問ですみません。。 アクセスのクエリで、ある数字の全体に対して占める割合を求めるため、以下のような式をいれています。 フィールドC: [フィールドA]/[フィールドB] このクエリを開いたときに毎回パラメータが表示されるのですが、これを表示させないためにはどのようにすればよいのでしょうか?OKを2回押せばきちんと計算された値が入ってくるのですが、毎回OKを押さずに開けるようにしたいです。 ちなみに、フィールドAとフィールドBは、あるテーブルに入っている値をクエリ側で 集計 を「合計」に設定して求めた値が入っていて、フィールドA~Cは同じクエリの中にあります。 VBAやSQLはまったく理解できません。 よろしくお願いします。

  • access クエリで集計した数値を別クエリで使いたい

    access2003で2000ファイル形式で以下のものを作っています。 テーブル「A」(フィールドは登録番号(主キー)、 書名) 「B」(登録番号(主キー)、 書名) がある。Aの「登録番号の最大値」(100とする)をクエリ(クエリ名「集計クエリ」)で集計して得た。 テーブルBの登録番号(1~30とする)を更新クエリで(1+100 ~ 30+100)に更新したい。そこでデザインビューで登録番号フィールド(テーブルB)の「レコードの更新」欄にビルダーで「[B]![登録番号]+[集計クエリ]![登録番号の最大値]」と入力して実行したら 実行できなかった。(仕方ないので「[B]![登録番号]+100」として実行したら更新できた。)今後もあるので「集計クエリ」で得た値を直接呼んで、更新クエリを実行したいのだが・・・。 わかりにくい質問で恐縮です。ご理解頂けたならば、ご教授ください。

  • Accessのクエリの数値表示について

    Access2002を勉強中の初心者です。 ある選択クエリから集計クエリを作成しました。 元のクエリの数値表示は少数が表示されていないのですが(例1,234)、集計クエリの方を開くと数値に少数点2位まで表示されています(例1,234.00)。この少数表示が目障りなので、表示しないようにしたいのですが、できますか? よろしくお願いします。

  • アクセスクエリーの質問です

    生徒名,年月日,点数というフィールドのレコードがあり 田中一雄,95,数学 田中一雄,91,国語 佐藤良夫,85,英語 クエリーを実行すると 田中一雄,95,数学 佐藤良夫,85,英語 のようにそれぞれの人の最高得点のレコードを表示する方法がわかららずにいます。 助言をいただけると助かります。

  • Accessで2つの表を結合して、クエリで表示させたいと

    Accessで2つの表を結合して、クエリで表示させたいと 思っています。 本屋でアクセスの本を読んだりしていろいろ試したのですが、 どんなに頑張ってもだめでした。どうかお力をお貸しくださいませ。 初心者です。 以下の二つのテーブル(表1、表2)があるとします。 ■表1■ 氏名   電話番号      FAX番号 ------------------------------------------------ 川田   ×××-××××  ×××-×××× 山田   ×××-××××  ×××-×××× 沢田   ×××-××××  ×××-×××× ■表2■ 氏名   電話番号      FAX番号 ------------------------------------------------ 田中   ×××-××××  ×××-×××× 鈴木   ×××-××××  ×××-×××× 井上   ×××-××××  ×××-×××× ■クエリ(このように出力したい!!)■ 氏名   電話番号      FAX番号 ------------------------------------------------ 川田   ×××-××××  ×××-×××× 山田   ×××-××××  ×××-×××× 沢田   ×××-××××  ×××-×××× 田中   ×××-××××  ×××-×××× 鈴木   ×××-××××  ×××-×××× 井上   ×××-××××  ×××-×××× このようなことは可能でしょうか? どうかよろしくお願いします。

  • アクセス クエリーの作成

    OS:98 Access Version:97 下記のようなレコードの抽出をしたいのですが、どのようにすれば できるのか教えてください。 <テーブル1> 顧客番号 氏名   学年 曜日 時間 科目 111111 田中一郎 中1 月  A1 国語 222222 鈴木太郎 中2 水  B3 算数 111111 田中一郎 中1 月  A2 理科 222222 鈴木太郎 中2 金  B3 社会 <クエリ1> 顧客番号 氏名   学年 曜日1 時間1 科目1 曜日2 時間2 科目2 111111 田中一郎   中1 月  A1  国語  月   A2 理科 222222 鈴木太郎   中2 水  B3  算数  金   B3 社会 このようにしたいのですが、お知恵をお貸し下さい

  • アクセスの追加クエリについて

    二つのテーブル間(AとB)を追加クエリを使い AからレコードをBに追加することは出来たんですが、 逆にBからAにレコードを追加しようと選択クエリを追加クエリに変更しようとしたんですが、ウィザードの追加先テーブル名にAのテーブル名が表れないですがその理由が全く分からないので分かる方教えていただけませんか? AとBのレコード内のフィールドは同じです。 AからBにレコードを移行する処理としてマクロを使いアクションとして ・クエリを開く(これは追加クエリです) ・SQLの実行(上と同じクエリを削除クエリに変更し、そのSQL文をSOLステートメントに貼り付けました) 上の処理は問題なく出来たので逆のBからAへレコード移行処理のマクロを作ろうとしたのですが、追加クエリの追加先テーブルにテーブルAの名前が出てこないので困っています。こういったAからB。BからAという処理は追加クエリで出来ないのでしょうか?

  • クエリファイルから外部のクエリファイルを実行する方法

    SQL Server2000です。 DB構築を行うにあたり、インストールで実行するクエリファイルから、 別のクエリファイル(実際にテーブル、ストアドを構築する内容を記述)を実行できる方法がわからず悩んでいます。 a.sql・・・b.sqlやc.sqlを統括するクエリファイル b.sql、c.sql・・・テーブル構成、ストアドを構築するクエリファイル SQL クエリアナライザからa.sqlのクエリファイルを開いて、 クエリ実行するイメージでいます。 a.sqlからb.sqlを呼び出すには、どのような記述をすればよろしいのでしょうか? よろしくお願いします。

  • アクセスのクエリについて教えてください。

    アクセス初心者です。 AテーブルとBテーブルを合体したCテーブルを作成したいのですが、 クエリを使って1工程でできませんでしょうか。 レコードが1000を越えると大変な作業になりますので、 何か良い方法を探しております。宜しくお願いします。 Aテーブル 顧客No  名前  住所  1     鈴木  東京  2     田中  横浜 Bテーブル 顧客No  名前  電話  1     鈴木  03  3     山田  044 Cテーブル 顧客No  名前  住所  電話  1     鈴木  東京  03  2     田中  横浜  3     山田      044              以上

専門家に質問してみよう