像一起使用oracle sql

Using oracle sql in like together

我正在尝试查找两个不同表之间的结果。查询如下

select * from atable 
where acolumn like in (select bcolumn from btable)

Acolumn 就像 someid_123 和 Bcolumn 就像 someid 这些数据我不能只在声明中使用,我需要使用可以像“like and in”声明一样的东西 我用谷歌搜索但找不到类似的东西,你能帮我吗? 谢谢

您正在寻找这个:

select * from atable 
join btable
  on acolumn like '%'|| bcolumn || '%'

您可以使用 exists:

select a.*
from atable a
where exists (select 1
              from btable b
              where a.acolumn like b.bcolumn
             );

如果还需要,您可以将通配符添加到 b.bcolumn,但您的问题并不表明这是必要的。