簡體   English   中英

基於if條件的SQL連接表

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM