我想修剪字符串中的值,然后除以某个值,但我的正则表达式返回零或一。
select (trim(total) regexp '^[0-9]*[.]{0,1}[0-9]*$')/3 as total_c
from test;
如何获得实际值而不是0或1。
例如来自A9.9
我最终想要3.3
。
总列的采样日期:
A9.9
ABC2.2
2.3xyz
22
.....
答案 0 :(得分:0)
在Mysql中没有直接支持正则表达式替换。 您必须使用REGEX_REPLACE()等用户定义的函数,或者使用PREG_CAPTURE()
就您的查询而言
select (trim(total) regexp '^[0-9]*[.]{0,1}[0-9]*$')/3 as total_c
from test;
正则表达式后跟regexp
运算符不匹配,返回值0,因此结果为0。