【发布时间】:2018-08-28 09:59:26
【问题描述】:
SELECT * FROM TABLE_NAME WHERE 'string' in ('string1','string2','string3')
它没有给出正确的结果 find_in_set 只给出了一个准确的结果。如果有任何方法可以在不使用 find_in_set
【问题讨论】:
标签: mysql find-in-set
SELECT * FROM TABLE_NAME WHERE 'string' in ('string1','string2','string3')
它没有给出正确的结果 find_in_set 只给出了一个准确的结果。如果有任何方法可以在不使用 find_in_set
【问题讨论】:
标签: mysql find-in-set
SELECT * FROM TABLE_NAME WHERE 'string' in ('string1','string2','string3');
在上面的查询中,string 应该是一个字段(列),因此,如果您要让这个查询工作,它将没有单引号 ',如下所示:
SELECT * FROM TABLE_NAME WHERE string IN ('string1','string2','string3');
这将返回字段string 恰好为string1 或string2 或string3 的所有行。
现在,如果您想在字段string 中查询“字符串”之类的值,但不完全匹配,那么您可以使用LIKE operator:
SELECT * FROM TABLE_NAME WHERE string LIKE '%string%';
在上面的查询中,包含string1、string2和string3的3条记录都会被返回。
【讨论】: