我可以给内连接的结果表起一个别名吗

Its*_*oro 2 sql sql-server

我可以有两个表连接结果的别名吗?这样我就可以用别名来调用表的结果。

SELECT emp_table.Name, dept_table.dept
FROM dept_table
inner join emp_table
on emp_table.dept_id = dept_table.dept_id;
Run Code Online (Sandbox Code Playgroud)

dar*_*rio 6

您可以使用子查询:

SELECT YourAlias.Name
      ,YourAlias.dept
FROM (SELECT emp_table.Name, dept_table.dept
      FROM dept_table
      INNER JOIN emp_table
        on emp_table.dept_id = dept_table.dept_id) AS YourAlias;
Run Code Online (Sandbox Code Playgroud)

或者使用 CTE:

;WITH YourAlias AS
(
     SELECT emp_table.Name, dept_table.dept
     FROM dept_table
     INNER JOIN emp_table
        on emp_table.dept_id = dept_table.dept_id
)
SELECT Name, dept
FROM YourAlias;
Run Code Online (Sandbox Code Playgroud)

有关 CTE 的更多信息请点击此处