我有一个返回
的列a:2:{i:0;s:10:"Properties";i:1;s:14:"Movable Assets";}
我只想回来:
Properties, Movable Assets
如何使用select语句检索"之间的值?符号
答案 0 :(得分:2)
答案 1 :(得分:1)
使用SUBSTRING_INDEX()
。
SUBSTRING_INDEX()
接受一个字符串参数,后跟一个分隔符和要返回的部分数。使用分隔符分解字符串后,该部分数量将作为单个字符串返回。
select concat(
SUBSTRING_INDEX(
SUBSTRING_INDEX(
SUBSTRING_INDEX(
'a:2:{i:0;s:10:"Properties";i:1;s:14:"Movable Assets";}',
'"',
4
),
'"',
2
),
'"',
-1
),
",",
SUBSTRING_INDEX(
SUBSTRING_INDEX(
SUBSTRING_INDEX(
'a:2:{i:0;s:10:"Properties";i:1;s:14:"Movable Assets";}',
'"',
4
),
'"',
4
),
'"',
-1
)
);
答案 2 :(得分:0)
使用LOCATE()
和SUBSTRING()
的组合。
定义:https://dev.mysql.com/doc/refman/5.0/en/string-functions.html
或更好 - 将数据迁移到实际可检索的位置。