我在映射表中有以下数据:
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可以为空。
我的第二张表格如下:
ID1 ID2
Local_-1 Local_2674
Local_0 Local_2674
Local_2624 Local_2674
Local_2619 Local_2674
如何使用以下条件内连接表?如果没有if语句,是否可以这样做?
如果映射表中的ID2为null,则只需加入ID1,否则加入ID1和ID2。
我的起点(显然会排除空值)是:
SELECT * FROM
#Table2 C
INNER JOIN Mapping F
ON C.ID1 = F.ID1 AND
C.ID2 = F.ID2
答案 0 :(得分:6)
SELECT * FROM
#Table2 C
INNER JOIN Mapping F
ON C.ID1 = F.ID1 AND
C.ID2 = ISNULL(F.ID2, C.ID2)
答案 1 :(得分:-1)
使用查询
SELECT * FROM
#Table2 C
INNER JOIN Mapping F
ON C.ID1 = F.ID1 AND
C.ID2 = F.ID2ffgffgf