[英]SQL join tables based on if else if conditions
SQL知識的新手,請原諒。
我想基於以下匹配邏輯創建一個將查詢從表B連接到表A的SQL查詢:
B.Source = ‘SOURCE1’ and A.NameCode= B.Code
如果以上返回NULL,那么我想匹配:
B.Source <> ‘SOURCE1’ and A.UEN = B.UEN**
任何有關如何構建此結構的幫助? 我目前有一個聯合所有選擇查詢,可以根據上述條件獲取值。 我應該在加入過程中使用If / or / case_when嗎?
我認為可能會有所幫助的幾個問題是:
如何在SQL Server中的兩個SELECT語句之間執行LEFT JOIN?
在連接條件上使用IS NULL或IS NOT NULL-理論問題
但是我什么也沒想起來:(非常感謝!
嘗試這樣的事情:
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?
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.