Mysql stringset的灵活搜索查询?

Mysql stringset的灵活搜索查询?,mysql,sql,hybris,Mysql,Sql,Hybris,请查找以下查询: 表名:B 查询:从{B}中选择* ID comp 1 d,e,f 我想使用SQL/Flexible搜索查询检查comp中是否存在值“f” 是否可以为此场景编写sql查询 更新: SELECT DISTINCT {b:pk} FROM {A AS a left join B as B on {a:ncode} = {b:ncode} and {a:qCode} = {b:qCode}} WHERE {a:compID} IN () 假设a:compI

请查找以下查询:

表名:B

查询:从{B}中选择*

ID  comp  
1   d,e,f 
我想使用SQL/Flexible搜索查询检查comp中是否存在值“f”

是否可以为此场景编写sql查询

更新:

SELECT  DISTINCT {b:pk}  FROM {A AS a left join B as B on {a:ncode} = {b:ncode} and {a:qCode}  =  {b:qCode}}

WHERE 

{a:compID} IN ()
假设a:compID是f

在IN运算符之后,我的子查询应该是什么才能达到我的要求?

这将起作用:

 SELECT FIND_IN_SET('f',(SELECT comp FROM t));
如果要检查是否存在,则:

SELECT case when FIND_IN_SET('f',(SELECT comp FROM t))=0 then'not present'
          else 'present' end from dual;

您可以在mysql中进行字符串搜索:

//完整搜索:

SELECT * FROM A WHERE comp LIKE '%f%'
//从f开始

SELECT * FROM A WHERE comp LIKE '%f'
//以f结尾

SELECT * FROM A WHERE comp LIKE 'f%'

以上查询在我的情况下不起作用,因为我使用的是hybris flexible search queryWhile此代码可能会解决OP的问题,但最好添加上下文,或者解释为什么您的代码会解决问题。通过这种方式,未来的访问者可以学习,并将其应用于他们自己的问题。高质量的答案更有可能被提升,而竞争性答案则保持了SO平台的高质量。
SELECT * FROM {B} where {comp} LIKE '%,f,%'