Re: 問題ID:8330 選択肢について

この質問の投稿一覧へ

なし Re: 問題ID:8330 選択肢について

msg# 1.1
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2014-5-29 10:22 | 最終変更
arashi1977  長老 居住地: 広島  投稿数: 1715
引用:
複数の列を返すこともできる

列ではなく、正しくは行ではないでしょうか。
選択肢は特に間違っていないと思います。
複数行返す問い合わせで、複数列返すこともできる、ということですね。

解説の最初の説明用クエリを例にしますが
SELECT employee_name, salary
FROM employees
WHERE salary >
   (SELECT AVG(NVL(salary, 0)) FROM employees);
employee_name, salaryの複数返してますよね?
これを改変して
SELECT employee_name
FROM employees
WHERE salary >
   (SELECT AVG(NVL(salary, 0)) FROM employees);
employee_nameだけにしました。この場合は単一列(って呼ぶのかな?)を返してます。

ちなみに、WHEREの条件である salary > (SELECT AVG(NVL(salary, 0)) FROM employees) が単一行を返しても、employees テーブルのレコードで条件にヒットする行が複数かえることがありますので、複数行返す、という syuson さんの認識も間違いではありません。

投稿ツリー

  >フォーラム検索へ


Copyright (c) 2020 Ping-t All rights reserved.