我正在运行一个包含以下代码位的SQL查询:
IF(oa.affiliatetrack REGEXP '|MB[1-6]', ((ol.item_price_exVat * oloq.oq_item_qty) * 0.08) *1.20, ((ol.item_price_exVat * oloq.oq_item_qty) * 0.06) *1.20) as Original_Commission
当这个在MySQl上运行时,它工作得很好。当我移动到Linux服务器,通过PHP自动运行脚本时,它返回给我这个错误:
MySQL错误:从regexp
得到错误'empty (sub)expression'
这是什么意思?如何避免呢?
在REGEXP ' |MB[1-6]
'的代码字符串中有符号 |
这个符号像或一样用于搜索变量,所以|MB[1-6]
有下一个搜索变量:
-
-空字符串(这是在您的情况下生成错误)
-
MB2
-
MB3
-
MB4
-
MB5
-
MB6
-
|
如果你需要'|
像文本部分在搜索字符串使用CC_12