MySQL json函数 json_extract

select version() 
-- 5.7.43-log

1.数据准备

create table tmp_eg as 
select *
from 
(select  John  as name,30 as age, chongqing  as city 
union all 
select  Tomi  as name,27 as age, nanchang  as city
union all 
select  nuna  as name,29 as age, hunan  as city
) t1
;

MySQL  json函数  json_extract

2.json_object()

接受一个键值对(可以为空)列表,并返回一个包含这些键值对的JSON对象 如果参数数量为奇数,则会发生报错

MySQL  json函数  json_extract

3.json_array()

接受一个值列表(可能为null),并返回一个包含这些值的json数组

MySQL  json函数  json_extract

4.json_type(json_val)

获取json类型 返回 json 值的类型。 如果参数不是有效的json值,则会出现错误

MySQL  json函数  json_extract

5.json_length()

如果是数组,其长度为数组元素的个数,如果是对象,其长度为对象元素的个数

MySQL  json函数  json_extract

6.json_extract()

函数可以用于提取json对象或数组中的特定部分。

它接受两个参数:json列和json路径

MySQL  json函数  json_extract

MySQL  json函数  json_extract

7.json_unquote(json_val)

将json 转义成字符串输出。常用于使用json_extract()和->函数解析完之后,去除引号

MySQL  json函数  json_extract

8.json_quote(string)

生成有效的 json 字符串,主要是对一些特殊字符(如双引号)进行转义

9.json_keys()

获取keys 返回 json 文档最外层的 key,如果指定了 path,则返回该 path 对应元素最外层的 key

MySQL  json函数  json_extract

10.json_set()

插入并替换 如果指定位置或指定 key 的值不存在,会执行插入操作,如果存在,则执行更新操作

MySQL  json函数  json_extract

11.json_table()

JSON_TABLE(expr, path COLUMNS (column_list) [AS] alias)
从 JSON 中提取数据并以表格的形式返回

     5.7好像不支持

select *
from 
(select 
json_object( name ,name, age ,age, city ,city) as json
from tmp_eg 
) t1,
json_table(
        json, 
         $[*]  
        columns (value varchar(255) path  $ )
        ) as jt

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
none
暂无评论...