sql >> Databasteknik >  >> RDS >> Mysql

Nest i en Nest Json-modell till SQL Table

du kan göra så här:

In [1]: fn = r'D:\temp\.data\40454898.json'

In [2]: with open(fn) as f:
   ...:     data = json.load(f)
   ...:

In [14]: t = pd.io.json.json_normalize(data['Volumes'],
    ...:                               ['Attachments','Tags'],
    ...:                               [['Attachments', 'VolumeId'],
    ...:                                ['Attachments', 'InstanceId']])
    ...:

In [15]: t
Out[15]:
         Key              Value Attachments.InstanceId   Attachments.VolumeId
0       Name  DBJanitor-Private    i-1234567890abcdef0  vol-049df61146c4d7901
1      Owner          DBJanitor    i-1234567890abcdef0  vol-049df61146c4d7901
2    Product           Database    i-1234567890abcdef0  vol-049df61146c4d7901
3  Portfolio         DB Janitor    i-1234567890abcdef0  vol-049df61146c4d7901
4    Service         DB Service    i-1234567890abcdef0  vol-049df61146c4d7901

OBS:andra argumentet ['Attachments','Tags'] är en sökväg till vår kapslade post (data['Values']->Attachments->Tags ) och det tredje argumentet [['Attachments', 'VolumeId'], ['Attachments', 'InstanceId']] är en sökväg till yttre metadata (data['Values']->Attachments->VolumeId , data['Values']->Attachments->InstanceId )




  1. Ställer in standardvärde för en json-kolumn

  2. OPENROWSET BULK-behörigheter till delad mapp

  3. Hur man tar bort från en tabell utan att behöva släppa en begränsning

  4. Hur konverterar man kommaseparerade värden till rader i Oracle?