gpt4 book ai didi

sql - 在 SQL 中合并 2 个结果集?

转载 作者:行者123 更新时间:2023-12-02 08:58:05 24 4
gpt4 key购买 nike

如何组合结果集以在 SQL 中返回单个结果?例如-

SELECT * FROM Table1
SELECT * FROM Table2

我想将两个结果集与第二个结果集中附加到第一个结果集中的列组合起来。

表 1 和表 2 之间没有任何关联。如果表 1 有 2 列而表 2 有 4 列,我希望在单个结果集中返回总共 6 列。如果表 1 有 4 行而表 2 只有 2 行,我希望表 2 行中的第 3 行和第 4 行为 NULLS。

这可能吗?

编辑:我不知道 Table1 和 Table2 中有多少列,所以不能对空值使用 UNION。

最佳答案

如果您的 RDBMS 支持 ROW_NUMBER(),您可以这样做。

WITH T1 AS
(
SELECT *, ROW_NUMBER() OVER ( ORDER BY T1id) AS RN1 FROM Table1
),
T2 AS
(
SELECT *, ROW_NUMBER() OVER ( ORDER BY T2id) AS RN2 FROM Table2
)


SELECT * FROM T1 FULL OUTER JOIN T2 ON RN1 =RN2

关于sql - 在 SQL 中合并 2 个结果集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3379923/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com