利用模糊join获取两表关联字段数据

遇到一个神奇的操作

需要左表中的某些数据在右表中出现,正常来讲只需要进行一个left join就好,但是因为右表中数据存储有点问题,需要用到一种类似模糊查询的方式。

这种情况下想使用SQL的模糊查询来获取两表关联字段数据

主要难点就是无法直接使用like来进行数据处理,我们无法得知被模糊查询的字段会出现在那个鬼地方,比如B表id=3的就出现在中间。这里选择采用了一种比较简单的操作,利用 模糊查询 %xxx% 进行一个全表扫描。
参考了网上一些案例使用concat来 和join on 来拼凑 模糊查询的样式

select A.ID,A.代号编码 from A x join B y
on y.代号编码 like concat('%',x.代号编码,'%')

posted @ 2022-07-31 16:48  KaneQi  阅读(902)  评论(0编辑  收藏  举报