ColA(Table1) ColB(Table2)
AB3 AB_MNO_3
AB3 AB_PQR_3
AB4 AB_MNO_4
AB4 AB_PQR_4
我想基于两个表中的列来执行Inner Join
,其中包含上面显示的一些不相等的值。因此,表1可以AB3
与AB_MNO_3, AB_PQR_3
匹配,而AB4
应与AB_MNO_4, AB_PQR_4
匹配
两个表中这些列中的其余值确实匹配。
如果有人提供相同的建议,我们将非常感激。
答案 0 :(得分:1)
SELECT * FROM Table1 tl INNER JOIN Table2 t2
ON (tl.ColA = t2.ColB OR (tl.ColA ='AB3' AND t2.ColB='AB_MNO_3')
OR (tl.ColA ='AB3' AND t2.ColB='AB_PQR_3') OR (tl.ColA ='AB4' AND t2.ColB='AB_MNO_4')
OR (tl.ColA ='AB4' AND t2.ColB='AB_PQR_4'))
答案 1 :(得分:1)
从您的示例中: 我认为 colA和Colb的前两个字符相等 和 colA的最后一个字符和ColB等于
SELECT * FROM TABLE1 t1 INNER JOIN
TABLE2 t2 ON
substr(t1.ColA,0,2) = substr(t2.ColB,0,2)
AND
substr(t1.cola,length(t1.cola),1) = substr(t2.colb,length(t2.colb),1)