梧桐数据库半布局化json数据入库及解析

打印 上一主题 下一主题

主题 968|帖子 968|积分 2904

  在日常开发中存在利用半布局化数据的场景,当前梧桐数据库支持对该类数据处理的功能,下面联合具体案例先容半布局化json数据的处理。
一、创建数据表

  1. drop table if exists public.tmp_alldata_json_test_202408 ;
  2. create table public.tmp_alldata_json_test_202408  
  3. (
  4.     id varchar,
  5.     alldata  json
  6. )with  (orientation = orc) distributed by (id);
复制代码
注:json类型无法作为分布键,同步创建id主键字段作为分布键。
二、将json数据导入数据表json字段

通过PSQL毗连数据库:
   psql -h $IP -d $DataName -U $UserName
  Json文件数据copy入库:
   \COPY $TableName(                                         D                            a                            t                            a                            C                            o                            l                            u                            m                            n                            )                            F                            R                            O                                       M                               ′                                      /                                  DataColumn ) FROM '/                     DataColumn)FROM′/Dir/$FileName’
  三、查询确认入数表数据内容:

  1. select alldata from public.tmp_alldata_json_test_202408  limit 5;
  2. {"PhoneNum":"12345678910","CustgLabel":["1234567","78901289"],"Province":"551"}
复制代码
四、利用SQL取数json字段数据中键字符串以及对应数据值

  1. select
  2. alldata-> 'PhoneNum'     as PhoneNum ,
  3. alldata-> 'CustgLabel'   as CustgLabel ,
  4. alldata-> 'Province'     as Province
  5. from public.tmp_alldata_json_test_202408  
  6. limit 50;
复制代码
通过以上方式可以将json布局的数据转换成布局化数据,如有需要创建相对应的布局化数据表将解析后的数据插入其中,完成半布局化数据到布局化数据的转换。
五、总结

  以上是将json布局的数据转化成布局化数据的入库操作方法,起首通过psql COPY的方式将json数据入库,通过语法将半布局化的数据解析为布局化数据,完成数据的入库及解析。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

飞不高

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表