gpt4 book ai didi

sql - 可以通过使用 JOINS 合并两个表而不丢失所有数据

转载 作者:行者123 更新时间:2023-11-29 12:34:12 24 4
gpt4 key购买 nike

我有一个如下表,我想知道我是否仍然可以将它们连接在一起,而不会在通过引用 JOIN 方法组合它们时丢失两个表中的现有数据。

表格详细信息 - 查看表格

SELECT
r.domainid,
r.DomainStart,
r.Domain_End,
r.ddid,
r.confid,
r.pdbcode,
r.chainid,
d.pdbcode AS "CATH_PDBCODE",
d.cathbegin AS "CATH_BEGIN",
d.cathend AS "CATH_END"
FROM dyndom_domain_table r
JOIN cath_domains d ON d.pdbcode::character(4) = r.pdbcode
ORDER BY confid ASC;

如您所见,dyndom_domain_table 是我创建的一个 VIEW 表,它使我可以更轻松地将 JOIN 子句与具有相同 pdbcode 的其他表一起使用。

到目前为止,它只返回与 PDB 代码匹配的所有数据。我想做的是返回所有匹配和不匹配彼此的 PDB 代码的数据。

是否有我可以应用它的规则?还是不可能?

最佳答案

我相信您需要的是 FULL OUTER JOIN 而不仅仅是 JOIN(默认情况下是 INNER JOIN)。在 FULL OUTER JOIN 中,每个表中的每一行都将对应于结果表中的某一行;一个表中与另一个表不匹配的行将使用 NULL 进行扩展以填充缺失的列。

所以 FULL OUTER JOIN 而不是 JOIN,你应该这样做。

关于sql - 可以通过使用 JOINS 合并两个表而不丢失所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8775366/

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