0

我有一个 3 列的 rowsetA。我需要将此 rowsetA 添加到具有上述 3 列以及其他列的现有 rowsetB 中。如何在 2 个行集之上添加/联合,以使 rowsetA 对 rowsetB 中存在的其他列具有空/空/默认值?

4

1 回答 1

1

最简单的方法是在使用 rowsetB 进行 UNION 时在 rowsetA 中添加默认空值。

@rowsetA = EXTRACT A string,
B string,
C string 
FROM @path 
USING Extractors.Csv();
@rowsetB = EXTRACT A string,
B string,
C string,
D string,
E string
FROM @path1
USING Extractors.Csv();
@union = SELECT A,B,C,null AS D,null AS E FROM @rowsetA
UNION
SELECT A,B,C,D,E FROM @rowsetB;

这样,您将在缺少的列上有空值。请注意,对于其他数据类型,例如 DateTime、int 等,您只需输入 default(int?) 而不是 null。

希望这可以帮助

于 2019-03-05T09:40:21.353 回答