Spring中指定位置的SQL计数

时间:2017-11-03 00:08:41

标签: mysql sql regex

我有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。

1 个答案:

答案 0 :(得分:0)

你可以这样做:

select sum(substring(col, 3) + 0)
from t;

substring()从第三个字符开始提取子字符串(在初始" a:"之后)。 + 0将前导数字转换为数字。