本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
parseJson
用parseJson
於從JSON物件擷取值。
如果資料集儲存在中 QuickSight SPICE,則可以在準備資料集parseJson
時使用,但在分析期間不能在計算欄位中使用。
對於直接查詢,您可以同時對資料準備和分析使用 parseJson
。此parseJson
函數會根據方言套用至字串或JSON原生資料類型,如下表所示。
方言 | Type |
---|---|
後備 SQL | JSON |
Amazon Redshift | 字串 |
Microsoft SQL 伺服器 | 字串 |
我的 SQL | JSON |
Teradata | JSON |
Oracle | 字串 |
Presto | 字串 |
Snowflake | 半結構化的資料類型物件和陣列 |
Hive | 字串 |
語法
parseJson(
fieldName
,path
)
引數
- fieldName
-
包含您要剖析之JSON物件的欄位。
- 路徑
-
您要從物件剖析之資料元素的路JSON徑。有效路徑的語法包括:
-
$:根物件
-
.:子運算子
-
[ ]:陣列的下標運算子
-
傳回類型
字串
範例
下列範例會評估JSON進料,以擷取料號數量的值。透過在資料準備期間使用此功能,您可以在JSON.
parseJson({jsonField}, “$.items.qty”)
下面顯示了JSON.
{ "customer": "John Doe", "items": { "product": "Beer", "qty": 6 }, "list1": [ "val1", "val2" ], "list2": [ { "list21key1": "list1value1" } ] }
針對此範例,會傳回下列值。
6
範例
下列範例會評估JSONObject1
為擷取第一個索引鍵值對 (KVP) ()"State"
,並將值指派給您正在建立的計算欄位。
parseJson(JSONObject1, “$.state”)
以下是指定欄位的值。
JSONObject1 ----------- {"State":"New York","Product":"Produce","Date Sold":"1/16/2018","Sales Amount":"$3423.39"} {"State":"North Carolina","Product":"Bakery Products","Date Sold":"2/1/2018","Sales Amount":"$3226.42"} {"State":"Utah","Product":"Water","Date Sold":"4/24/2018","Sales Amount":"$7001.52"}
對於這些欄位值,會傳回以下資料列。
New York North Carolina Utah