我有两个看起来像这样的表:
表1:
表2:
并且我想合并它们,以创建一个带有这样的标题的表:
variablenname | mean | stddev | ms_form | dependent | fvalue | probf
前九行应该是第一个在最后3列中具有空值的表,后面是第二个表中的三行,在前4列中具有空值。对不起,我无法发布图片或第三个链接,但我的声誉太低了。我希望这是可以理解的。
我尝试创建一个新表,然后从union
选择所有内容,但这并不起作用。有人能帮助我吗?
谢谢!
答案 0 :(得分:0)
答案 1 :(得分:0)
您可以使用ALTER将最后3列添加到表1.从那里,将INSERT表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
答案 2 :(得分:0)
您可以使用联接和联合的组合
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;