这是我面临的问题:
代理商
预期的和已实现的代码X
等于与他们一样远
相同的作业文件
例如 :
Realized Xs for job file #123 : A and B
Expected Xs for job file #123 : A and C
Expected Xs for job file #456 : B
预期结果 :
Job_File Realized Expected
-------- -------- --------
123 A A
123 B NULL
123 NULL C
456 NULL B
当然,123的已实现 B 绝不应该与456的预期 B 匹配,因为它们不属于同一作业文件。
因此,就好像我想同时在代码中同时填充外部联接和在作业文件ID上进行内部联接一样。
这似乎很奇怪,但是……实际上很合逻辑。我到底该怎么做?
预先非常感谢您的宝贵帮助! :-)
最佳答案
您只需要在两个条件而不是一个条件下加入!
SELECT COALESCE(realized.Job_File, expected.Job_File),
realized.code,
expected.code
FROM realized
FULL OUTER JOIN expected
ON realized.Job_File = expected.Job_File
AND realized.Code = expected.Code
关于sql - FULL OUTER JOIN有点内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6584833/