Sql 为什么我无法访问子查询中的别名?

Sql 为什么我无法访问子查询中的别名?,sql,Sql,例如: 如果我尝试 select job from (select ename as "name", job from emp) 工作但是 select name from (select ename as "name", job from emp) 不要 即使这样也不行 select a.name from (select ename as "name", job from emp) a 使用SQL Server 2008R2从中选择一个.name作为名称

例如:

如果我尝试

     select job from (select ename as "name", job from emp) 
工作但是

     select name from (select ename as "name", job from emp)
不要

即使这样也不行

     select a.name from (select ename as "name", job from emp) a

使用SQL Server 2008R2从中选择一个.name作为名称,从emp中选择作业作为

SELECT
    A.Name

FROM
    (SELECT
        FormStatus AS [Name],
        FormStatusCodeID
    FROM
        CodeFormStatus) AS A

按预期工作。使用现有的表进行测试

不是一个,而是因为您的第一个代码示例将在许多数据库引擎中抛出错误。您使用的是哪一种?@AlexandreSantos取决于SQL的变体。在没有上次查询的情况下对我有效。@AlexandreSantos with AS i get:ORA-00933:SQL命令没有正确结束,而AS i get:ORA-00904:A.NAME:invalid identified used SELECT A.NAME FROM SELECT ename AS NAME,job FROM emp AS A正如您编写的一样,不起作用。我真不明白为什么