oracle 数据库中的报文库怎么拆分查询
oracle 数据库中的报文库怎么拆分查询
有按报文头和报文数据合并在一起,几十个报文头和报文数据整合成一列,做报表的时候想要差拆分,需要怎么拆分。
找到一个方法,使用 json_value 函数可以拆分
"oracle 数据库中的报文库怎么拆分查询 有按报文头和报文数据合并在一起,几十个报文头和报文数据整合成一列,做报表的时候想要差拆分,需要怎么拆分。 找到一个方法,使用 json_value .."
oracle 数据库中的报文库怎么拆分查询
有按报文头和报文数据合并在一起,几十个报文头和报文数据整合成一列,做报表的时候想要差拆分,需要怎么拆分。
找到一个方法,使用 json_value 函数可以拆分
数据是这样的
{“common”:{“busid”:“TMS0030”,“instld”:“FA163EADCDA91EEB8FCD1349598AE6AF”,“sender”:“ERP”,“receiver”:“TMS”,“request_time”:20201215080055},“business”:{“record”:[{“head”:{“relatedNumber”:“21131461”,“orderType”:“ZSI”,“customerCode”:“2033”,“customerName”:“是懂法公司”,“source”:“YZT_NF”,“requiredDepartureTime”:“00000000”,“requiredArrivalTime”:“00000000”,“shipperCode”:“P302435005”,“consigneeCode”:“[00007997-1] 陈志勇 01”},“item”:[{“lineNumber”:“147178”,“goodsCode”:“1000000592”,“convertModulus”:1,“modulusUnit”:“KG”,“quantity”:17020,“unit”:“KG”,“detailWerks”:2033}]}]}}
可以使用脚本数据集,在脚本数据集中使用集算器脚本解析这个 json 串,如图:
A1:为那个字符串
A2:源字符串里有双引号影响数据,这里用 replace 函数替换串中的中文双引号,否则将来解析出的字段名中都呆了引号了
B2:使用 json 函数,将串转成数据表形式
第三行做了个判断,如果数据是单表形式,那么返回时加上 [],否则返回 B2 的值
这样到报表中数据集就变成:
找到对应的数据集制作报表就行。