【发布时间】:2019-05-09 00:33:27
【问题描述】:
我遇到了一个我以前从未真正见过的奇怪的 mysql 错误。 这是由类似于下面的查询引起的。 有什么建议吗?
SELECT *
FROM table
WHERE col REGEXP '^* MAN *$'
LIMIT 100
错误:
#1139 - Got error 'repetition-operator operand invalid' from regexp
-- 更新--
好的,我可以确认以下两种解决方案有效。感谢以下两个答案的帮助:
SELECT *
FROM table
WHERE col REGEXP '^(\\*) MAN (\\*)$'
LIMIT 100
SELECT *
FROM table
WHERE col REGEXP '^[*] MAN [*]$'
LIMIT 100
【问题讨论】:
-
类似的?上面的查询有没有问题?
-
你要匹配的字符串是什么???
-
^*的目的是什么,您的意思是^.*因为第一个对我来说是一个或多个行首 -
@nikhilsugandh 我正在尝试将字符串“* MAN *”匹配为完全匹配但是为了缩短日志故事,我需要使用正则表达式。我需要像“^* MAN *$”这样的东西。但这就是我得到的错误,不管转义