2

例如,假设您在数据库中有一个随机字符串:APKHDP

我想搜索包含字符 PHP 的所有字符串(按该顺序)。所以我搜索 PHP 并返回上面的字符串。或者我搜索 HPP,它什么也没返回。

是否有一个简单的解决方案可以使这成为可能,也许使用 REGEX?听起来很简单。但到目前为止,我发现的答案非常复杂。

我将它与 PHP 一起使用(因此是示例!),如果这是最好的前进方式,我很乐意将 PHP 集成到解决方案中。

4

3 回答 3

3
SELECT * FROM table WHERE text_field REGEXP '.*P.*H.*P.*'

文档。_

于 2012-07-09T10:24:13.103 回答
2

使用 MySQL 正则表达式 - 你可以匹配事物,但不能替换 - 例如:

选择“APKHDP”正则表达式(“[PHP]”)

返回“1”(即,正则表达式匹配字符串)。

尽管上面的正则表达式可能不适合您的需要(它匹配任何使用字母 P、H 和 P),但您必须对其进行调整。

你可以让你的正则表达式更复杂,或者你可以做多个匹配:

SELECT field FROM TABLE WHERE field REGEXP(match1) AND field REGEXP(match2)..etc

无论您认为哪个最简单...

链接:REGEXP 的 MySQL 手册

于 2012-07-09T10:22:25.663 回答
0
SELECT * 
FROM  `COLUMNS` 
WHERE  `TABLE_NAME` 
REGEXP  'APKHDP'
于 2012-07-09T10:23:25.957 回答