No.3ベストアンサー
- 回答日時:
モジュールを作成し、その中に関数を作成します。
Function myMax(ParamArray a())
Dim i
myMax = -9999
For i = 0 To UBound(a())
If a(i) > myMax Then myMax = a(i)
Next
End Function
で、クエリに
最高点: myMax([n01],[n02],[n03])
というふうに関数を使えます。SQLでは
SELECT t8.name, t8.n01, t8.n02, t8.n03, myMax([n01],[n02],[n03]) AS 最高点 FROM t8;
となります。
頑張ってくださいヽ(^。^)ノ
回答くださり、ありがとうございます。
がんばってみました!
・・・と言っても、まったく意味も分からず、snoopy64さんの書き込みをただコピー&ペーストしただけなんですが。
大成功でした。どうもありがとうございます。助かりました!
No.2
- 回答日時:
選択クエリのフィールド名に
最大値:IIf([1回目の得点]>=[2回目の得点],IIf([1回目の得点]>[3回目の得点],[1回目の得点],[3回目の得点]),IIf([2回目の得点]>=[3回目の得点],[2回目の得点],[3回目の得点]))
で可能です。
また、#1の方もおっしゃっていますが、得点のフィールドが今後も増えていくことが予想されるなら、テーブルの設計を見直したほうが良いかもしれません。
そうしないと、フィールドが増えるたびにクエリを作り直さないといけなくなりますから。
ただ、個人の得点は絶対に3回までというのであればこのままでも問題ないとは思います。
回答くださり、ありがとうございました。
いままで、IIfという関数は使ったことがなかったので、勉強になります。
レコードは大量に増えるのですが、フィールドは増えていかないので、一度設定すれば大丈夫そう!
別の目的でテーブル設計されたものを利用しようとするのは、ほんと私の知識では手に負えません。どうもありがとうございました。
No.1
- 回答日時:
UNIONクエリを使用すれば可能です (下記を参照)
SELECT qry01.名前, Max(qry01.得点) AS 得点の最大
FROM [SELECT 各人の成績表.名前, 各人の成績表.1回目の得点 AS 得点
FROM 各人の成績表
UNION
SELECT 各人の成績表.名前, 各人の成績表.2回目の得点 AS 得点
FROM 各人の成績表
UNION
SELECT 各人の成績表.名前, 各人の成績表.3回目の得点 AS 得点
FROM 各人の成績表
UNION
SELECT 各人の成績表.名前, 各人の成績表.4回目の得点 AS 得点
FROM 各人の成績表
UNION SELECT 各人の成績表.名前, 各人の成績表.5回目の得点 AS 得点
FROM 各人の成績表
ORDER BY 名前, 得点]. AS qry01
GROUP BY qry01.名前
ORDER BY qry01.名前
しかし、現状のテーブルは話にならないほどひどい設計と言えます。
SQLが複雑化するのも偏に設計が悪いからです。
具体的にどうするか、ですが、下記の解説を一読されるとよいでしょう。
[テーブルの正規化]
www8.pekori.to/~zoma/kanki_t.html
さっそくにお手数おかけしました。
回答ありがとうございます。
設計につきましては、現実にはもっとたくさんのフィールドがあり、毎月毎月レコードが万単位で作製されているデーターベースのため、本当に必要な部分だけ、例としてだしました。申し訳ございません。
テーブルの設計の見直しは、本筋の業務から無理なのです。ごめんなさい。アドバイスありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) Accessフォームで複数条件でフィールドの値を表示する方法 4 2022/07/21 10:47
- Access(アクセス) Accessフォーム 一部のレコードだけを抽出する方法について 1 2022/06/28 18:45
- Access(アクセス) Accessテキストボックス内に2つのフィールドの値を比較して大きい方の値を表示させる方法 1 2022/09/09 10:50
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) Accessクエリで年月フィールドを年のみで抽出する方法について 2 2022/08/29 18:10
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- SQL Server ACCESSで表が作りたく、そのためのSQL文や設定方法を教えてください。 1 2022/08/15 12:28
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
ACCESSにてフィールド間の最小値を表示するためのモジュール
その他(データベース)
-
ACCESSのMax(Min)関数使用方法
Access(アクセス)
-
あるフィールドの最大値を条件にデータを抽出する方法
その他(データベース)
-
-
4
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
5
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
6
OR関数
その他(Microsoft Office)
-
7
グループ毎の最大値を持つデータのみ抽出したい
SQL Server
-
8
Access 同じデータをたくさんのレコード(同一列)に一度に入力するには
Access(アクセス)
-
9
ACCESS 2つのテーブルの最大値を選択クエリで抽出
その他(データベース)
-
10
複数のレコードを1つのレコードにまとめる方法
Access(アクセス)
-
11
アクセス VBAについて FROM句の構文エラー
Access(アクセス)
-
12
AccessのDMax関数の複数条件式に関して
Access(アクセス)
-
13
前のレコードの値を自動で入れたい
PowerPoint(パワーポイント)
-
14
【Access】選択クエリのグループ化で最大日付の中の最大IDを抽出する方法?
Windows 95・98
-
15
ACCESSで2つフィールドの日付を比較して新しい日付を表示するには。
Access(アクセス)
-
16
Access2003 クエリで、空の列は作れますか?
Access(アクセス)
-
17
【ACCESS/必須条件とOR条件を組み合わせる】
その他(Microsoft Office)
-
18
Accessでフィールド名を変数(文字列)で・・・
Access(アクセス)
-
19
アクセスで追加した項目に全て同じ値を一発で入れたい
Access(アクセス)
-
20
Accessで、1つの項目に複数の置換えを1度でするには?
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
高成績と好成績の違い
-
「功績をあげる」の「あげる」...
-
同級生で抜くってやばいですか?
-
留学先の大学でエッセイを提出...
-
Access 各レコードの中での最大...
-
伸びるの反対は、縮む?
-
人生の成績表
-
大学2年です。就活時に成績ギリ...
-
Aマイナス評価とは
-
卒業日とは…?
-
ベトナム人は日本人からかなり...
-
理系学部関係者にお聞きしたい...
-
カナダ大学への飛び級入学の資...
-
交換留学中の成績不振
-
特別支援学校からの地域の小学...
-
大学 単位について ・4年生の春...
-
現在大学生です。グーグルクラ...
-
辞書持ち込みの説得力のある理由
-
海外移住したいのですが、なぜ...
-
アメリカの人は自分の身長をcm...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
おすすめ情報