我需要在mysql中组合两个列数不同的表。。。。有什么窍门吗?
idv4meu81#
正如@joakim danielson所说,你可以尝试使用 UNION ALL 合并两个查询。添加 NULL 列数较少。
UNION ALL
NULL
CREATE TABLE A( col1 int, col2 varchar(100), col3 datetime ); insert into a values (1,'test1','2017-01-01 01:00:00'); CREATE TABLE B( col1 int ); insert into b values (3);
例如,中有三列 A 表中的一列 B table。像这样。
A
B
SELECT col1,col2,col3 FROM A UNION ALL SELECT col1,null,null FROM B
注:如果你 UNION ALL 需要确保列具有相同的类型,如上面的示例所示 A.col1 以及 B.col1 类型应该相同。如果 A.col1 以及 B.col1 没有可以使用的相同类型 CAST 函数使它们成为同一类型。
A.col1
B.col1
CAST
1条答案
按热度按时间idv4meu81#
正如@joakim danielson所说,你可以尝试使用
UNION ALL
合并两个查询。添加NULL
列数较少。例如,中有三列
A
表中的一列B
table。像这样。
注:
如果你
UNION ALL
需要确保列具有相同的类型,如上面的示例所示A.col1
以及B.col1
类型应该相同。如果
A.col1
以及B.col1
没有可以使用的相同类型CAST
函数使它们成为同一类型。