在MySQL中,是否可以选择包含在另一列中引用的部分的字符串?

在MySQL中,是否可以选择包含在另一列中引用的部分的字符串?,mysql,sql,Mysql,Sql,下面是一个例子,我的参考资料如下: |宙斯 |波塞冬 |阿波罗 然后我得到了这个比较表: 海神祝福 随机祝福 宙斯的力量 我想要的是这样的东西: 波塞冬祝福|波塞冬 来自宙斯的力量|宙斯 是否有方法将字符串的内容与引用表进行比较 我尝试的是: 在哪里。。。在“从引用中选择引用” 但这会比较整个字符串行,因此不会返回任何内容,因为它不包含在引用表中 在哪里。。。与CONCAT%类似,从referencetable中选择reference,% 但是这个测试和错误,因为它只对一个参考值起作用,错误表示

下面是一个例子,我的参考资料如下:

|宙斯 |波塞冬 |阿波罗 然后我得到了这个比较表:

海神祝福 随机祝福 宙斯的力量 我想要的是这样的东西:

波塞冬祝福|波塞冬 来自宙斯的力量|宙斯 是否有方法将字符串的内容与引用表进行比较

我尝试的是:

在哪里。。。在“从引用中选择引用” 但这会比较整个字符串行,因此不会返回任何内容,因为它不包含在引用表中

在哪里。。。与CONCAT%类似,从referencetable中选择reference,% 但是这个测试和错误,因为它只对一个参考值起作用,错误表示有不止一行

有没有办法将这两个想法合并起来以实现我的目标?

您可以使用join和like:

select t.*, c.*
from t1 join
     tocompare c
     on c.reference like concat('%', t1.col, '%');