需要帮助理解逻辑。我有来自不同数据库的 2 个表。有一个共同字段,但数据不完整。
举个例子: 表 1 现场数据如下:test
table 2 its coming as - select test from tablename
我需要比较并获取表 2 中的所有数据,其中它与表 1 中的数据匹配,即测试。我尝试使用完整外连接,然后使用常规匹配来获取记录测试,但它不起作用。有人可以帮助理解这个问题的理想解决方案吗
您可以使用 SQL 转换,也可以使用完全联接和
instr()
的方法。
A.使用 SQL 转换 -
使用 table1 作为源限定符。传递您想要匹配的列(假设列名称是 match_col)。
SELECT t2.col1, t2.col2 FROM table2 t2 WHERE t2.match_col like ?match_col?
SQ --> EXP --> SQL_Transform -> Tgt
B.使用完全连接和
instr()
- 这是一种低效的方法,但在数据量较低时它会起作用。
match_nomatch = iff( instr(upper(table1_match_col), upper(table2_match_col))>0, 'Match','No Match')
映射就像
SQ --> |
SQ_2--> JNR -> EXP--> FIL-->Tgt