OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

SQL文で教えてください

  • 困ってます
  • 質問No.225224
  • 閲覧数206
  • ありがとう数2
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 95% (159/167)

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

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

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

kosuuの一番大きい値とそれに紐づくIDを取得したいのですが
SELECT ID, Max(kosuu) FROM tblX
と書くと、IDが不正だとおこられてしまいます。
ID kosuu
------------
2 5
を抽出するにはどうしたらよいでしょうか?
Access2000です。宜しくお願いします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル8

ベストアンサー率 45% (15/33)

こんにちは。

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

こんな感じです。

select ID,kosuu
from tblX
where kosuu in (select max(kosuu) from tblX group by name)
お礼コメント
chachako

お礼率 95% (159/167)

できました!!
ご親切にどうもありがとうございました!
大変勉強になりました。
これからもどうぞ宜しくお願いします。
投稿日時 - 2002-02-26 14:46:30
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.1
レベル8

ベストアンサー率 45% (15/33)

select ID,kosuu from tblX where kosuu = (select max(kosuu) from tblX) こんな感じで出来ると思います。 ...続きを読む
select ID,kosuu
from tblX
where kosuu = (select max(kosuu) from tblX)

こんな感じで出来ると思います。
補足コメント
chachako

お礼率 95% (159/167)

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:52


このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ