gpt4 book ai didi

空值上的 SQL "Join"

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

由于我无法控制的原因,我需要连接两个表,并且需要匹配空值。我能想到的最佳选择是吐出一个 UUID 并将其用作我的比较值,但它看起来很丑陋

SELECT * FROM T1 JOIN T2 ON nvl(T1.SOMECOL,'f44087d5935dccbda23f71f3e9beb491') = 
nvl(T2.SOMECOL,'f44087d5935dccbda23f71f3e9beb491')

我怎样才能做得更好?如果重要的话,这是在 Oracle 上,上下文是一个应用程序,其中必须将一批用户上传的数据与一批现有数据进行比较,以查看是否有任何行匹配。回想起来,我们应该阻止任一数据集中的任何连接列包含空值,但我们没有,现在我们必须忍受它。

编辑:明确地说,我不仅关心空值。如果列不为空,我希望它们匹配它们的实际值。

最佳答案

也许这会奏效,但我从未真正尝试过:

SELECT * 
FROM T1 JOIN T2
ON T1.SOMECOL = T2.SOMECOL OR (T1.SOMECOL IS NULL AND T2.SOMECOL IS NULL)

关于空值上的 SQL "Join",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1758409/

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