我需要帮助了解以下查询以及它们有效/无效的原因:
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”的内容将是INVALID。
答案 0 :(得分:6)
在第二种情况下,薪水被视为last_name的别名。
因此,您将获得last_name
值,但命名为salary
(例如,结果集中的列标题)。所以这是有效的,但你没有检索工资的价值。
在第三种情况下,你有太多的空格(如果你不在它周围加上引号,别名就不能有空格),所以它没有用。