MySQL: 将两个表合并在一起
MySQL: Merging two tables together
只是想知道,如果我有两个 table 有一些共同的列(虽然可能顺序不同)和一些不同的列,是否有一种简单的方法将两个结构合并在一起,以便两者其中有相同的列吗?
我尝试导出两者的结构并将文件合并在一起,目的是创建一个创建合并的查询 table 但是因为公共列的顺序不同,我最终尝试添加同一列两次。
或者如果有这样的查询:
ALTER TABLE `example` ADD IGNORE...
你应该看看 'JOIN' 所以如果 your_table
有更多的记录并且你需要来自 your_second_table
的一些额外的列并且表由两个中的一些 common_field
列连接你可以:
SELECT t.*, t2.*
FROM your_table t
LEFT JOIN your_second_table t2
ON t.common_field = t2.common_field
AND t.another_common_field = t2.another_common_field
我想你想要一个 union all
查询:
select col1, col2, col3, NULL as col4, col5
from table1
union all
select col1, col2, col3, col4, NULL as col5
form table2;
最终对我有用的是导出两个表的结构并将它们的添加列查询添加到 excel 列中并删除重复项并仅使用剩下的唯一查询创建一个新查询两个表中的唯一列。
只是想知道,如果我有两个 table 有一些共同的列(虽然可能顺序不同)和一些不同的列,是否有一种简单的方法将两个结构合并在一起,以便两者其中有相同的列吗?
我尝试导出两者的结构并将文件合并在一起,目的是创建一个创建合并的查询 table 但是因为公共列的顺序不同,我最终尝试添加同一列两次。
或者如果有这样的查询:
ALTER TABLE `example` ADD IGNORE...
你应该看看 'JOIN' 所以如果 your_table
有更多的记录并且你需要来自 your_second_table
的一些额外的列并且表由两个中的一些 common_field
列连接你可以:
SELECT t.*, t2.*
FROM your_table t
LEFT JOIN your_second_table t2
ON t.common_field = t2.common_field
AND t.another_common_field = t2.another_common_field
我想你想要一个 union all
查询:
select col1, col2, col3, NULL as col4, col5
from table1
union all
select col1, col2, col3, col4, NULL as col5
form table2;
最终对我有用的是导出两个表的结构并将它们的添加列查询添加到 excel 列中并删除重复项并仅使用剩下的唯一查询创建一个新查询两个表中的唯一列。