您需要添加通配符,例如在sqlserver中
%使用通配符
LIKE,否则,它本质上成为对是否相等(
=)的检查。这是您使用通配符的查询:
SELECt *FROM t1 INNER JOIN t2 ON [t1].[LOCATION_CODE_DESC] Like '%' + [t2].[DMT Bank Name]+ '%' AND [T1].[LOCATION_CG_LOC_LEGACY_ID] Like '%' + ConVERT(varchar(50),[t2].[5 Digit Code] )+ '%';
这是一个小提琴:http ://sqlfiddle.com/#!3/
dc2b9/10/0
您还需要转换为
int为
varchar某种兼容的。
但是请注意,
join对大型数据集执行“按赞”操作(尤其是使用转换)将导致非常差的性能。
编辑:MS Access
当您将int转换为字符串并使用不同的通配符时,MS Access将有所不同。我没有安装访问权限,因此无法测试,但是我认为您的MS Access查询如下所示:
SELECt *FROM t1 INNER JOIN t2 ON [t1].[LOCATION_CODE_DESC] Like '*' & [t2].[DMT Bank Name] & '*' AND [T1].[LOCATION_CG_LOC_LEGACY_ID] Like '*' & CStr( [t2].[5 Digit Code] ) & '*';



