从SQL中的UNION ALL中选择

0 sql sql-server union

当我做一个:

SELECT id FROM table1
UNION ALL
SELECT id FROM table2
Run Code Online (Sandbox Code Playgroud)

我得到了一个包含所有ID的新表格,它很完美。但是当我尝试一个:

SELECT * FROM (
               SELECT id FROM table1
               UNION ALL
               SELECT id FROM table2
               )
Run Code Online (Sandbox Code Playgroud)

它不起作用,它什么也没回报我。

谁能帮我吗?我已经尝试了很多东西,这是一个很小的代码,所以我不明白为什么它不起作用。

非常感谢。

Mez*_*Mez 5

您缺少派生结果集的别名。尝试以下

SELECT * FROM (
               SELECT id FROM table1
               UNION ALL
               SELECT id FROM table2
               ) as t
Run Code Online (Sandbox Code Playgroud)

这将适用于MSSQL,MySQL,但是在为Oracle进行别名时需要删除“ AS”。