ここから本文です

ある項目が最大値のデータを取出したいのですが SELECT MAX(DB項目名) FROM D...

ceb********さん

2006/3/2523:59:52

ある項目が最大値のデータを取出したいのですが
SELECT MAX(DB項目名) FROM DB名 とすると
最大の項目値しか表示しません。
そのデータ1件のすべての項目を取出したいのですが
SELECTの後に*をつけるとエラーになってしまいます。
宜しくお願いします

閲覧数:
94,762
回答数:
1

違反報告

ベストアンサーに選ばれた回答

mrt********さん

編集あり2006/3/2600:48:42

SELECT * FROM <表名> WHERE <列名> = (SELECT MAX(<列名>) FROM <表名>);
で如何ですか。
最大値を与える行が複数ある場合には、複数行返ります。
MAXは集計関数なので、GROUP BY などと併用しない限りは、他の列値を同時に取得することはできません。

なお、最大値を与える行が複数ある場合で、そのうちの1行だけを取得するときには、
SELECT * FROM <表名> WHERE <列名> = (SELECT MAX(<列名>) FROM <表名>) AND ROWNUM=1;
としてください。

あわせて知りたい

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる