繁体   English   中英

具有两个不同列的 SQL 合并表

[英]SQL Merge tables with two different columns

我有两个看起来像这样的表:

表格1:

在此处输入图片说明

表2:

在此处输入图片说明

我想合并它们,以创建一个带有如下标题的表:

variablenname | mean | stddev | ms_form | dependent | fvalue | probf

前 9 行应该是第一个表,最后 3 列是空值,然后是第二个表中的三行,前 4 列是空值。 很抱歉我不能发布图片或第三个链接,但我的声誉太低了。 我希望这是可以理解的。

我尝试创建一个新表并使用union从两者中选择所有内容,但这没有用。 有谁能够帮助我?

谢谢!

这就是我希望决赛桌的样子: 在此处输入图片说明

您可以使用 ALTER 将最后 3 列添加到表 1。从那里,将表 2 插入到表 1 中。就像这样。

ALTER table1 ADD dependent varchar(16)
ALTER table1 ADD favalue varchar(16)
ALTER table1 ADD probf varchar(16)

INSERT INTO table1(dependent, fvalue, probf)
  SELECT * FROM table2

您可以使用连接和联合的组合

LEFT JOIN在第一个查询中对不匹配的字段的两个表然后UNION第二个查询与相同表的RIGHT JOIN

LEFT JOIN只会显示第一个表的结果,然后RIGHT JOIN只会显示第二个表的结果

就像是:

SELECT * FROM table1 as t1 
LEFT JOIN table1 as t2 on t1.variablenname = t2.fValue 
UNION 
SELECT * FROM table1 as t1 
RIGHT JOIN table1 as t2 on t1.variablenname = t2.fValue;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM