else-if条件的mysql-sql连接表

mftmpeh8  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(282)

新做sql的东西,所以请原谅我。
我想创建一个sql查询,根据以下匹配逻辑将列从表b连接到表a:

B.Source = ‘SOURCE1’ and A.NameCode= B.Code

如果上面的返回为空,那么我想匹配:

B.Source <> ‘SOURCE1’ and A.UEN = B.UEN**

有没有关于如何构建这个的帮助?我目前有一个union all select查询,可以根据上述条件获取值。在连接过程中是否应该使用if/或/case\u?
一些我认为有用的问题是:
在SQLServer中,如何在两个select语句之间执行左联接?
在连接条件上使用is null或is not null-理论问题
但我什么也想不出来:(太谢谢你了!

yruzcnhs

yruzcnhs1#

尝试以下操作:

SELECT * 
FROM A
JOIN B ON (
    (B.Source = 'Source1' AND A.NameCode = B.Code) OR
    (B.Source <> 'Source1' AND A.UEN = B.[UEN**]) --Not sure what the**is?  Part of the field name?
)

相关问题