我有一个名为uf
的列,其中包含JSON对象数组。这是一个样机:
[
{"type": "browserId","name": "","value": "unknown"},{"type": "campaign","value": "om_227dec0082a5"},{"type": "custom","name": "2351350529","value": "10148"},"name": "9501713387","value": "true"},"name": "9517735577","name": "9507402548","name": "9733902068","value": "true"}
]
我正试图将其作为子记录,但是由于某些原因,我找不到首先取消嵌套的正确方法。然后我注意到我的整个数组都包裹在另一个JSON对象中。
我在这里:
我尝试了简单选择,并注意到结果是:
[{type=[{"type": "browserId","value": "ff"},name=null,value=null}]
此列的定义如下:
{
"Name": "uf","Type": "array<struct<type:string,name:string,value:string>>"
}
定义不正确吗,这就是为什么我将整个数组包装在另一个json数组中?
-编辑
这是我的csv文件(制表符分隔)的示例。最近两天花了很多时间来查看是否与JSON有关,这使Glue无法将列识别为JSON数组,但是我创建了一个带有简单JSON数组的新列,该列已正确分配为array<struct
,但在查询后我得到的正是与上述相同的问题
timestamp project_id campaign_id experiment_id variation_id layer_holdback audience_names end_user_id uuid session_id snippet_revision user_ip user_agent user_engine user_engine_version referer global_holdback event_type event_name uf active_views event_features event_metrics event_uuid
1570326511 74971132 11089500404 11097730080 11078120202 false [] oeu1535997971348r0.4399811351004357 AUTO 6540 5.91.170.0 Mozilla/5.0 (Linux; Android 7.0; SAMSUNG SM-G925F Build/NRD90M) AppleWebKit/537.36 (KHTML,like Gecko) SamsungBrowser/9.2 Chrome/67.0.3396.87 Mobile Safari/537.36 js 0.128.0 https://www.zavamed.com/uk/account/ false view_activated 10832783364 [{"type": "browserId",{"type": "device","value": "mobile"},{"type": "device_type","value": "phone"},{"type": "referrer","value": "https:\/\/www.google.co.uk\/"},{"type": "source_type","value": "campaign"},{"type": "currentTimestamp","value": "-1631518596"},{"type": "offset","value": "-60"}] [] [] [] 4926a5f1-bbb5-4553-9d0b-b26f773fa0f4