php - 在 mysql 中搜索特定的单词

标签 php mysql regex

我在mysql数据库中有如下字符串

"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
"Three Mayer Brown Goodies & Securities"

我需要找到与 LIKE %% 关键字不同的确切词。这是例子,

我需要选择带有 "Good" 关键字的行。这将选择前 3 行。最后一个有额外的词,如 "ies" 这是我的预期结果

    "Good Mayer Brown Corporate & Securities"
    "Three Mayer Brown Good & Securities"
    "Three Mayer Brown Corporate & Good" 

我已经尝试过以下查询。

SELECT * FROM table WHERE myword LIKE '% Good %'  OR myword LIKE 'Good%' OR myword LIKE '% Good'

但这对我不起作用。

最佳答案

SELECT * FROM table WHERE myword REGEXP '^.*GOOD.*$

您可以使用 REGEXP 来执行此操作。或者

SELECT * FROM table WHERE myword REGEXP '[[:<:]]GOOD[[:>:]]'

word boundary 一起使用。参见演示。 http://www.sqlfiddle.com/#!9/e1b9d/6/0

关于php - 在 mysql 中搜索特定的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29142356/

相关文章:

javascript - 我的其他表格没有提交

php - 如何将 float 转换为百分比格式并保存到mysql数据库中?

php - 使用多个 MySQL 行和 For Loop - 不工作

正则表达式匹配除某些单词外的所有小写字符

regex - 在 Swift 中查找括号之间的文本

php - MySQL,如何按类别排序?

javascript - 如何在点击时关闭当前元素

mysql - 共享 RDS 数据库

ios - 正则表达式在 swift 2 中获取 vimeo 视频 ID

javascript - 在平板电脑或手机中显示弹出框时出错