mysql - 按字符串中任何单个单词的开头搜索

标签 mysql string

有没有一种方法可以通过记录中任何子字符串的开头进行搜索?

具体的例子是:

Nike shoes, Shoes Nike, Sunick shoes

假设搜索字符串是'ni'。

如果我只在搜索字符串的末尾使用通配符,我只会得到第一条记录。如果我在两端都使用 wild char,我将获得所有三个记录。

有没有办法只得到前两个?

也许可以对末尾带有通配符的字符串进行搜索,其中第二个参数与第一个参数相同但带有前置空格。

类似“WHERE field LIKE 'ni%' OR '% ni%'”

最佳答案

您可以使用 regular expression仅匹配以单词边界开头的字符串:

WHERE field REGEXP '[[:<:]]ni'

关于mysql - 按字符串中任何单个单词的开头搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23679066/

相关文章:

mysql - 如何使用左连接来统计mysql中除第一个结果之外的结果数?

mysql - 如何重命名MySQL查询结果

c++ - 想要创建许多不同的文件,但名称不同

string - 如何在 Swift 中返回所有子字符串(不止一次)?

python - 如何从以空格结尾的字符串中排除子字符串?

c++ - 允许用户通过在 C++ 中加倍来传递分隔符

mysql - 如何 "clean"mysql information_schema?

php - 我想编码数据是否已存在于我的数据库中

php - 如何在 Paypal 结账期间验证交易 ID (TXN)

c# - 如何在字符的第一个实例处截断字符串?