将多个表中的列合并在一起,列不按顺序
Merge columns together from multiples tables, columns not in order
我有 3 个 SELECT FROM,我想将 3 个结果合并为一个 table,我不能使用一个 select*from 而对 3 个使用 JOIN tables.
我可以使用用作键的 A 和 B 列合并 table。
我需要对 3 个合并的 table 执行最终 UNION,其中列的顺序不同。
示例:
SELECT A, B, C, D, E, F, G, H, I
FROM Table
UNION ALL
(
SELECT A, B, F, G FROM Stuff
--JOIN?MERGE?WhatHere?
SELECT A, B, E, C FROM otherStuff
--JOIN?MERGE?WhatHere?
SELECT A, B, D, H FROM otherstuffbis
I --adding null value to columns
)
试试这个
SELECT A, B, C, D, E, F, G, H, I
FROM Table
UNION ALL
(
SELECT
A,
B,
NULL AS c,
NULL AS D,
NULL AS E,
F,
G ,
NULL AS H,
NULL AS I
FROM [stuff]
SELECT
A,
B,
c,
NULL AS D,
E,
NULL AS F,
NULL AS G ,
NULL AS H,
NULL AS I
FROM [otherStuff]
UNION ALL
SELECT
A,
B,
NULL AS c,
NULL AS D,
E,
NULL AS F,
NULL AS G ,
H,
NULL AS I
FROM [otherstuffbis]
) A
我有 3 个 SELECT FROM,我想将 3 个结果合并为一个 table,我不能使用一个 select*from 而对 3 个使用 JOIN tables.
我可以使用用作键的 A 和 B 列合并 table。 我需要对 3 个合并的 table 执行最终 UNION,其中列的顺序不同。
示例:
SELECT A, B, C, D, E, F, G, H, I
FROM Table
UNION ALL
(
SELECT A, B, F, G FROM Stuff
--JOIN?MERGE?WhatHere?
SELECT A, B, E, C FROM otherStuff
--JOIN?MERGE?WhatHere?
SELECT A, B, D, H FROM otherstuffbis
I --adding null value to columns
)
试试这个
SELECT A, B, C, D, E, F, G, H, I
FROM Table
UNION ALL
(
SELECT
A,
B,
NULL AS c,
NULL AS D,
NULL AS E,
F,
G ,
NULL AS H,
NULL AS I
FROM [stuff]
SELECT
A,
B,
c,
NULL AS D,
E,
NULL AS F,
NULL AS G ,
NULL AS H,
NULL AS I
FROM [otherStuff]
UNION ALL
SELECT
A,
B,
NULL AS c,
NULL AS D,
E,
NULL AS F,
NULL AS G ,
H,
NULL AS I
FROM [otherstuffbis]
) A