4

マッピングテーブルに次のデータがあります。

ID1         LOCALID         ID2
Local_-1    BankA_7-9       Local_2647
Local_0     Bank_7-9        Local_2647
Local_2624  BGROMF          NULL
Local_2619  BIS             NULL

ID2はnull許容です。

2番目のテーブルは次のようになります。

ID1        ID2
Local_-1   Local_2674 
Local_0    Local_2674
Local_2624 Local_2674
Local_2619 Local_2674

次の条件でテーブルを内部結合するにはどうすればよいですか?ifステートメントなしでこれを行うことは可能ですか?

マッピングテーブルのID2がnullの場合は、ID1に結合するだけです。それ以外の場合は、ID1とID2に結合します。

私の出発点(明らかにnull値を除外します)は次のとおりです。

SELECT * FROM 
    #Table2 C
     INNER JOIN Mapping F 
                  ON C.ID1 = F.ID1 AND
                  C.ID2 = F.ID2
4

2 に答える 2

6
SELECT * FROM  
    #Table2 C 
     INNER JOIN Mapping F  
                  ON C.ID1 = F.ID1 AND 
                  C.ID2 = ISNULL(F.ID2, C.ID2)
于 2012-08-15T09:07:24.413 に答える
-1

クエリを使用する

SELECT * FROM 
    #Table2 C
     INNER JOIN Mapping F 
       ON C.ID1 = F.ID1 AND
       C.ID2 = F.ID2ffgffgf
于 2014-06-13T12:01:34.093 に答える