如何使用scd信息连接2个表时插入类型



我有两个源表:

table A:                 table B:
A_id || A_code           B_id || B_code 
-----  -------           -----  ------- 
2          t2            1      t1
3          t3            2      t2
4          t4            3      t3 

我想连接2个表使用慢慢改变维度

target table:
tgt_id || tgt_code || is_table A || is_table B
-----  ------------   -----------   ----------- 
1          t1         0              x 
2          t2         x              x   
3          t3         x              x
4          t4         x              0

我不能检查类型'is_table A '和'is_table B'当连接表

如果我理解正确,您需要在A_id=B_id上执行完整的外部连接(在SQ或Joiner中)。然后,您可以通过执行一些null检查来派生表达式转换中的目标字段,如下所示:

tgt_id: IIF(ISNULL(A_id),B_id, A_id)

tgt_code: IIF(ISNULL(A_code), B_code, A_code)

is_table_A: IIF(ISNULL(A_id),'0','x')

is_table_B: IIF(ISULL(B_id), '0', 'x')

最新更新