質問: 実施者 日付 記録 1 9/8 3分 1 9/10 2分 1 9/11 1分 2 10/1 3分 2 10/2 4分 上記のような場合、実施者毎に最新の日付の記録を抽出する方法。つまり、 実施者 日付 記録 1 9/11 1分 2 10/2 4分 Dmaxを使えば良い気がしますが、うまくいきません。現在、クエリ上にて実施者毎にグループ化して、実施者毎の最高記録、最低記録、平均記録はできたのですが、最新記録がうまくいきません。できれば同じクエリ上で表示できればと思っています。 よろしくお願いします。
回答: 1:まず、以下のようなクエリを「実施者別最新日付」という名前で作っておく。 SELECT [記録テーブル].実施者ID, Max([記録テーブル].日付) AS 最新日付 FROM 記録テーブル GROUP BY [記録テーブル].実施者ID; 2:次に、以下のようなクエリを記述する SELECT [記録テーブル].実施者ID, [記録テーブル].日付, [記録テーブル].[記録] FROM 記録テーブル INNER JOIN 実施者別最新日付 ON ([記録テーブル].日付 = 実施者別最新日付.最新日付) AND ([記録テーブル].実施者ID = 実施者別最新日付.実施者ID); こんな感じでいけるんじゃないかと思います。