例如,假设您在数据库中有一个随机字符串:APKHDP
我想搜索包含字符 PHP 的所有字符串(按该顺序)。所以我搜索 PHP 并返回上面的字符串。或者我搜索 HPP,它什么也没返回。
是否有一个简单的解决方案可以使这成为可能,也许使用 REGEX?听起来很简单。但到目前为止,我发现的答案非常复杂。
我将它与 PHP 一起使用(因此是示例!),如果这是最好的前进方式,我很乐意将 PHP 集成到解决方案中。
SELECT * FROM table WHERE text_field REGEXP '.*P.*H.*P.*'
文档。_
使用 MySQL 正则表达式 - 你可以匹配事物,但不能替换 - 例如:
选择“APKHDP”正则表达式(“[PHP]”)
返回“1”(即,正则表达式匹配字符串)。
尽管上面的正则表达式可能不适合您的需要(它匹配任何使用字母 P、H 和 P),但您必须对其进行调整。
你可以让你的正则表达式更复杂,或者你可以做多个匹配:
SELECT field FROM TABLE WHERE field REGEXP(match1) AND field REGEXP(match2)..etc
无论您认为哪个最简单...
SELECT *
FROM `COLUMNS`
WHERE `TABLE_NAME`
REGEXP 'APKHDP'