1

SQL 関数内でサブクエリを使用できるかどうかを尋ねたいと思います (グループ関数と単一関数の両方を考慮してください)。私はこの単純なクエリを試してきました -

select count(select empno from emp where sal<3000) from emp;

「表現がありません」というエラーが出ます。これは簡単な例です。

このクエリロジックが間違っているのか、SQLで許可されていないのか、SQL関数内でサブクエリを使用できるかどうかを知りたいだけです。例を挙げてください。

ありがとう。

4

3 に答える 3

1

あなたのクエリは単に意味がありません。なぜあなたはこれをしないのですか?

select count(empno) from emp where sal<3000;
于 2013-02-24T05:50:55.083 に答える
0

可能だと思います。例については、 http: //www.akadia.com/services/sqlsrv_subqueries.html を参照してください (ページで「DATEDIFF」を参照してください)。ただし、SQL のすべてのフレーバーで可能かどうかはわかりません。たとえば、私は SAS を使用していますが、SAS には独自のかなり最低限の SQL 実装があり、それが許可されていないようです。

于 2013-02-24T05:57:21.877 に答える
0

サブクエリを使用できる場合でも、レコードをループすることで評価およびカウントできる式または列名を本質的に返す必要があります。したがって、サブクエリの結果をクエリの列として使用するか、他の結合の組み合わせを使用してジョブを実行することを検討する必要があります。

于 2013-02-24T06:44:47.720 に答える