最新閲覧日:

初めてです。お願いします。

次のようなテーブルがあります。

ID kosuu
------------
1 3
2 5
3 1

kosuuの一番大きい値とそれに紐づくIDを取得したいのですが
SELECT ID, Max(kosuu) FROM tblX
と書くと、IDが不正だとおこられてしまいます。
ID kosuu
------------
2 5
を抽出するにはどうしたらよいでしょうか?
Access2000です。宜しくお願いします。

A 回答 (2件)

こんにちは。



先ほどのサブクエリーでは、結果が一件の時のみ有効ですので
グループ化して複数のレコードを条件としたい場合は、IN句を使います。
"="を"in"に変えて、グループ化をしてみてください。

こんな感じです。

select ID,kosuu
from tblX
where kosuu in (select max(kosuu) from tblX group by name)
    • good
    • 0
この回答へのお礼

できました!!
ご親切にどうもありがとうございました!
大変勉強になりました。
これからもどうぞ宜しくお願いします。

お礼日時:2002/02/26 14:46

select ID,kosuu


from tblX
where kosuu = (select max(kosuu) from tblX)

こんな感じで出来ると思います。

この回答への補足

maroさん、ありがとうございます!!できました!
で、実はテーブルにはもうひとつカラムがありまして、

ID kosuu Name
------------
1 3 aa
2 5 aa
3 1 bb

となっています。
実際は、このNameでグループ化した中でのkosuuの最大値をとりたかったのです。
最大値の取り方だけわかれば後は自分で出来るかなあ?
と思い、色々やってみたのですが、できませんでした(-_-)
もしよろしければ、そちらのやり方も教えていただけないでしょうか?
あつかましくてすみません。
宜しくお願いします。

欲しいデータは
ID kosuu Name
------------
2 5 aa
3 1 bb
です。

補足日時:2002/02/26 12:13
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報

カテゴリ