0

我需要帮助理解以下查询以及它们为何有效/无效:

SELECT first_name last_name, salary FROM employee    VALID
SELECT first_name, last_name salary FROM employee    VALID
SELECT first_name last_name salary FROM employee     INVALID

作为参考,第一个检索last_name 和salary,第二个检索first_name 和salary。

另外,需要注意的是,有效行上的“额外”未打印列必须是实际行。键入诸如“asfsfasfs last_name,salary”之类的内容将是无效的。

4

1 回答 1

6

在第二种情况下,salary 被视为 last_name 的别名。

因此,您将获得last_name价值,但已命名salary(例如,结果集中的列标题)。所以它是有效的,但你不检索薪水的价值。

在第三种情况下,你的空格太多(如果你不把引号括起来,别名就不能有空格),所以它是无效的。

于 2013-10-28T16:39:34.690 回答