
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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
ACCESSにてフィールド間の最小値を表示するためのモジュール
その他(データベース)
-
あるフィールドの最大値を条件にデータを抽出する方法
その他(データベース)
-
ACCESSのMax(Min)関数使用方法
Access(アクセス)
-
-
4
Accessのクエリでフィールドの一番大きな数字を抽出させるには?
その他(データベース)
-
5
ACCESS クエリで重複データを最新の1件だけ表示
Access(アクセス)
-
6
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
7
【Access】Dcount関数の複数条件で順位を付ける方法について
Access(アクセス)
-
8
Accessのクエリで、replace関数を使い、データの中にある”をブランクに置き換えたいのですが
Access(アクセス)
-
9
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
10
Accessのテーブルからcsv出力する際に一部のフィールドを除いて出力したい
Access(アクセス)
-
11
ACCESS初心者 - 同一テーブルの複数フィールドの比較、値取得について
Access(アクセス)
-
12
パラメータが少なすぎます。1を指定して下さい。""
Excel(エクセル)
-
13
「#エラー」の回避
Access(アクセス)
-
14
Access 同じデータをたくさんのレコード(同一列)に一度に入力するには
Access(アクセス)
-
15
Access サブフォームでの選択行の取得
その他(データベース)
-
16
2つのテーブルに共通するレコードを削除したい
Access(アクセス)
-
17
ACCESS 一番最新の日付の金額を出したいのですが・・
その他(データベース)
-
18
Accessで、1つの項目に複数の置換えを1度でするには?
Access(アクセス)
-
19
Accessの条件付き書式設定で、複数の条件が一致した時の書式を設定したい
その他(Microsoft Office)
-
20
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
高成績と好成績の違い
-
同級生で抜くってやばいですか?
-
「功績をあげる」の「あげる」...
-
伸びるの反対は、縮む?
-
Access 各レコードの中での最大...
-
教育実習の評価と教員採用試験
-
カンニングをしました
-
校歌を教えない学校
-
大学で単位数が危なかったりし...
-
卒業日とは…?
-
1ヶ月前に大学のクラスで知り合...
-
理系学部関係者にお聞きしたい...
-
現在大学生です。グーグルクラ...
-
昔から行きたかったイギリスの...
-
日本の大学とアメリカなどの大...
-
短大で大学卒業分の単位を取得...
-
成績をメールで聞いてもいいか
-
純粋に慶應通信に興味があるの...
-
卒業の取り消しに関して
-
私は友達の友達に写真で一目惚...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
おすすめ情報