sql-server - left 将 2 个表连接到一个字段中
问题描述
我想将下面的 2 个表(h 和 he)加入到主表中,但我只有一个字段 [mpxn] 而不是 2 个 [h.mpxn & he.mpxn]
有没有办法做到这一点?不应该出现在 h 和 he 表中都有结果的情况。
SELECT distinct [Interaction ID]
,[BP Number]
,he.mpxn
FROM [DOMCustomers].[Bart].[OpenComplaints] as c
Left join DOMCustomers.Bart.MeterHealth as h on c.[BP Number]=h.[Business Partner]
Left join DOMCustomers.Bart.ENAMeterHealth as he on c.[BP Number]=he.[Business Partner]
解决方案
你可以UNION
在之前把两张桌子放在一起LEFT JOIN
with mpxn_cte([BP Number], mpxn) as (
select [BP Number], mpxn from DOMCustomers.Bart.MeterHealth
union
select [BP Number], mpxn from DOMCustomers.Bart.ENAMeterHealth)
select distinct c.[Interaction ID]
,c.[BP Number]
m.mpxn
from M [DOMCustomers].[Bart].[OpenComplaints] as c
left jion mpxn_cte m on c.[BP Number]=m.[BP Number];
推荐阅读
- git - git config rebase.abbreviateCommands
- c++ - C++ countdown in CyclicBarrier going wrong using atomic variables [solutions without locks please]
- android - Android Studio 总是在启动 LLDB 服务器时停止
- node.js - NextJS - 如何在循环内的图像链接中添加参数
- javascript - 如何根据最新日期获取不同的值
- tensorflow - TensorFlow 服务:无法解析示例输入
- laravel - Alias an Eloquent relationship when eager loading
- hierarchical - Altium Designer 17.1 分层设计问题
- racket - matching literals in match in racket
- java - 如何更改 Math.PI 的值