mysql检查给定的字符串是否在没有FIND_IN_SET的逗号分隔列表中

时间:2018-08-28 09:59:27

标签: mysql find-in-set

SELECT * FROM TABLE_NAME WHERE 'string' in ('string1','string2','string3')

它没有给出正确的结果,find_in_set只给出了确切的结果。如果有任何不使用find_in_set

来获得正确结果的方法

1 个答案:

答案 0 :(得分:0)

  

SELECT * FROM TABLE_NAME WHERE'string'在   ('string1','string2','string3');

在上面的查询中,string应该是一个字段(列),因此,如果要进行此查询,它将没有单引号',如下所示:

  

SELECT * FROM TABLE_NAME WHERE字符串IN   ('string1','string2','string3');

这将返回字段string恰好是string1string2string3的所有行。


现在,如果要在字段string中查询诸如“ string”之类的值,而不是完全匹配,则可以使用LIKE operator

  

SELECT * FROM TABLE_NAME WHERE string like'%string%';

在上面的查询中,将返回包含string1string2string3的所有3条记录。