0

表の例:

テーブル名:Ex1

Number
2
5
6
7
1
5
10

SQLでALLまたはANYを使用して最小値を見つける方法は?

4

3 に答える 3

1

可能であれば、どのデータベースでこれを実行したいか、もう少し答えを説明する質問を書き直す必要があると思います。

MIN関数を使用する代わりに、なぜそれを実行したいのかわかりません。

Oracleではこれを行うことができます

select * from ex1 where number <= ANY (select number from ex1 where rownum=1 order by number asc)

ただし、これは次と同じ結果になります。

 select * from ex1 where rownum=1 order by number asc

これを行うこともできます:

select * from ex1 where number <= ALL (select number from ex1)

詳細については、こちらをご覧ください。

于 2012-03-16T18:19:32.560 に答える
0

ANYを使用してSQLサーバーインスタンスを混乱させるリスクがあります(ALLの方が良いでしょう)。

select number 
from ex1 
where number not in 
    (select number from ex1 where number > any (select number from ex1))

今は汚いです。

于 2012-03-16T18:25:01.437 に答える
0

使用するALL

SELECT * 
  FROM Ex1 
 WHERE Number <= ALL ( SELECT Number FROM Ex1 AS T2 );

使用するANY

SELECT * 
  FROM Ex1 
 WHERE NOT Number > ANY ( SELECT Number FROM Ex1 AS T2 );
于 2012-03-19T12:12:24.807 に答える