选择使用联合查询
我想使用以下查询在 SQL Server 中创建一个新表。我无法理解为什么这个查询不起作用。
查询 1:有效
SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2
查询 2:无效。 错误:消息 170,级别 15,状态 1,第 7 行 第 7 行:“)”附近的语法不正确。
SELECT * INTO [NEW_TABLE]
FROM
(
SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2
)
谢谢!
I want to create a new table in SQL Server with the following query. I am unable to understand why this query doesn't work.
Query1: Works
SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2
Query2: Does not Work.
Error: Msg 170, Level 15, State 1, Line 7
Line 7: Incorrect syntax near ')'.
SELECT * INTO [NEW_TABLE]
FROM
(
SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2
)
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
您必须为 SQL Server 中的派生表定义表别名:
“x”是本示例中的表别名。
You have to define a table alias for a derived table in SQL Server:
"x" is the table alias in this example.
仅当 Table_A 和 Table_B 具有相同架构时才有效
This only works if Table_A and Table_B have the same schemas
您还可以尝试:
You can also try:
以下是 SQL Server 2017 的一种工作语法:
Here's one working syntax for SQL Server 2017:
在 MS Access 中,您可以:
与 OMG Ponies 的答案相同,只是使用了关键字“AS”。
In MS Access you can:
It's the same a OMG Ponies's answer except the keyword "AS" is used.