我有两个具有完全相同架构的表。
我想要一个第三个表,包含这两个表的所有数据。
如何使用 INSERT INTO 查询(单个查询执行此操作)来执行此操作?
我知道我可以通过以下方式执行此操作:INSERT INTOname_of_new_table SELECT DISTINCT * FROMname_of_old_table 但随后我需要执行两次。我正在寻求通过单个查询来完成此操作。
谢谢。
INSERT INTO new_table
SELECT * FROM old_table_1
UNION
SELECT * FROM old_table_2
Run Code Online (Sandbox Code Playgroud)
删除了您的DISTINCT,因为UNION有暗示DISTINCT(UNION ALL没有这个)。然而,只有当表的列数相同并且具有相似的列类型时,这才有效。再说一次,听起来这就是你的情况。