今天要处理mysql中json字段,提取里面的关键信息,但是使用的mysql7以下版本没有json_extract()函数,生产环境又没办法随意创建函数。最后总结了处理办法
使用双层 SUBSTRING_INDEX获取需要的字段,在使用TRIM去掉双引号
1、字符串拆分: SUBSTRING_INDEX(str, delim, count)
str 需要拆分的字符串
delim 分隔符,通过某字符进行拆分
count 当 count 为正数,取第 n 个分隔符之前的所有字符;
当 count 为负数,取倒数第 n个分隔符之后的所有字符。
2.TRIM 函数去除双引号, TRIM(BOTH '"' FROM 目标字段)
使用trim 函数去除双引号
BOTH 后跟要去除对象
FROM 后跟要去除目标字段值
示例:
select
trim(BOTH '"' from substring_index(SUBSTRING_INDEX(tti.CLIENT_INFO,':',-4),',',1)) AS userIp
from user