业务中存在一张视频数据库表,其中,关于点赞数、下载数、评论数等以JSON字符串对象存放在statistic字段下。部分表字段截图如下:

数据库表
业务需求:制作sql报表,查询出每个视频的各项数据。

使用sql处理时需要截取JSON对象中某一项值,这里使用JSON_EXTRACT 函数。
函数作用:截取数据库中指定字段中存储的json数据中的某个字段对应的值
语法:
JSON_EXTRACT(JSON字符串,$.特定项)
-- {"share_count":1,"comment_count":1,"digg_count":7,"download_count":0,"forward_count":0,"play_count":0}select JSON_EXTRACT(a.statistic, '$.share_count') AS share_count, JSON_EXTRACT(a.statistic, '$.comment_count') AS comment_count, JSON_EXTRACT(a.statistic, '$.digg_count') AS digg_count, JSON_EXTRACT(a.statistic, '$.download_count') AS download_count, JSON_EXTRACT(a.statistic, '$.forward_count') AS forward_count, JSON_EXTRACT(a.statistic, '$.play_count') AS play_count FROM douyin_video_data a效果如图:
不想手写重复代码?用 Apifox 一键生成多语言 SDK 和类型定义
如何把接口测试塞进 CI CD 流水线?用 Apifox CLI 自动跑测试
既有 HTTP 又有 Dubbo 和 gRPC?中移互联网如何一套工具搞定多协议
测试步骤多被限频了?用私有化 Runner 跑大规模并发测试
接口文档写得太乱?如何用 Apifox 自动检测 API 规范
小米路由器增强版怎么设置网速(小米路由器增强版网速设置方法)