我有这样的场景:
我有一个 mysql 数据库,其中有一个包含字符串的表。 我通过 post/get/whatever 请求向脚本发送一个字符串,该脚本必须检查表中的字符串是否包含在发送的字符串中。
例如,我在表中有单词“test”,我发送单词“atesta”。我想返回 true。
相反(检查该单词是否包含在数据库中)很简单(选择 bla bla 其中列如“%string%”)。
我希望我描述问题的方式足够清楚。
最佳答案
颠倒论点。然后使用串联运算符||
添加%
,前后:
WHERE 'string' LIKE ('%' || column || '%')
或串联函数:
WHERE 'string' LIKE CONCAT('%', column, '%')
<小时/>
我应该提到,默认设置让 ||
运算符充当逻辑 OR
运算符的同义词。要充当标准串联运算符,服务器必须在 ANSI
mode 中运行。 (了解 PIPES_AS_CONCAT
详细信息)。
关于mysql - 如何检测数据库中的单词是否包含在发送的字符串中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9394490/