
名前 番号 登録日
-------------------------
名前1 1 2002/01/01
名前2 2 2002/05/01
名前3 3 2003/02/01
名前1 4 2003/02/01
名前3 5 2004/01/01
上記のようなデータがある時、
名前 番号 登録日
-------------------------
名前1 4 2003/02/01
名前3 5 2004/01/01
の様に同一の名前があるときは登録日が最新のをselect
したいのですがうまくいかないので、どうやればできるのか教えてください(max関数やGroup Byを使ったのですがうまくいきませんでした)
No.5
- 回答日時:
下記で出来ます。
SELECT テーブル名.名前, Max(テーブル名.登録日) AS 登録日の最大
FROM テーブル名
GROUP BY テーブル名.名前
HAVING (((Count(テーブル名.名前))>1));
名前でグループ化し同一の名前のレコードのカウントする。
カウントが2以上のレコードの最大の登録日を抽出する。
No.4
- 回答日時:
結果をテーブルに格納してもいいですか?
結果テーブルの「名前」フィールドを「重複なし」に設定してください。
クエリーまたは、SQLで「登録日」を降順に設定し、結果テーブルに追加クエリーしてください。
最新だけがテーブルに追加され、それ以外の名前の重複するレコードはエラーとなってはじかれます。
この時表示されるエラーメッセージを出したくない場合には「アクションクエリー」の確認オプションのチェックをはずしてください。

No.3
- 回答日時:
SELECT テーブル1.名前, Max(テーブル1.日付) AS 日付の最大
FROM テーブル1
GROUP BY テーブル1.名前;
では駄目ですか?
IDまで必要ならばこのクエリーともとのテーブルを繋ぐクエリーを作る。
No.2
- 回答日時:
SELECT テーブル名.*
FROM テーブル名
WHERE (((テーブル名.名前)="名前1"));
上記のSQLで平気だと思います。
結果の名前が1ではなく3になってますよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでテーブルからテーブル...
-
Accessでテーブル名やクエリ名...
-
Countと受付状態の表示に...
-
Accessレコードの追加や変更が...
-
Accessでvlookupみたいなことは...
-
SQLで日付を条件に削除したい
-
SQL: SELECT UNIONすると文字数...
-
Accessのサブフォームで#Name...
-
2つのテーブルを比較して一致し...
-
2つのmdb内にある同名テーブル...
-
下記の事を行うSQLがわかりませ...
-
SQL Serverでの検索時の文字の...
-
デザインビューで、連結式 を...
-
ACCESS97のテーブルサイズについて
-
クエリを開こうとすると"型が一...
-
Accessの追加クエリで既存のテ...
-
ツリー構造をRDBで表現するには?
-
パススルークエリをテーブル作...
-
アクセスで消し込みがしたい
-
access テーブル内のレコード...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessでテーブル名やクエリ名...
-
Accessでテーブルからテーブル...
-
Accessレコードの追加や変更が...
-
3つの表を1つに縦に連結する
-
Accessクエリでの、LIKE条件
-
2つのテーブルを比較して一致し...
-
ACCESSのSQLで数値型に変換する...
-
access テーブル内のレコード...
-
Accessでvlookupみたいなことは...
-
Accessの追加クエリで既存のテ...
-
SQLで条件指定結合をしたいがNU...
-
テーブル作成クエリで主キーを設定
-
ACCESSで指定されたテーブルか...
-
デザインビューで、連結式 を...
-
INSERT時にデータ登録とmaxの発...
-
AccessでのNULLのレコードの表...
-
ODBCで接続するとDBに変更/追加...
-
Accessでテーブルにパスワード...
-
ツリー構造をRDBで表現するには?
-
Accessで、複数のテーブルで随...
おすすめ情報