我有MySQL数据库,我从预订系统存储信息。我想计算一个指定的值,该值存储在作为字符串的“places”列中。 字符串看起来像这样:
a:3:{i:1626;a:2:{s:10:".........
a:5:{a:2:{s:10:{s:10:...........
a:15:{i:1364;a:2:s:10:"place_....
我要查找的值是字符串“a:”开头后和下一个符号“:”之前的数字。基本上,在这种情况下,我想数3 + 5 + 15。是否有可能在MySQL中使用一些指定的正则表达式,如果是,你会怎么做?先谢谢你们。我真的不知道如何使用这种REGEXP。
答案 0 :(得分:0)
你可以这样做:
select sum(substring(col, 3) + 0)
from t;
substring()
从第三个字符开始提取子字符串(在初始" a:"之后)。 + 0
将前导数字转换为数字。