本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
parseJson
使用 parseJson
從 JSON 物件擷取值。
如果您的資料集儲存在 QuickSight SPICE 中,您可以在準備資料集時使用 parseJson
,但不能在分析期間於計算欄位中使用。
對於直接查詢,您可以同時對資料準備和分析使用 parseJson
。如下表所示,取決於方言,parseJson
函數會套用至字串或 JSON 原生資料類型。
方言 | Type |
---|---|
PostgreSQL | JSON |
Amazon Redshift | 字串 |
Microsoft SQL Server | 字串 |
MySQL | 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
來擷取標籤為 "State"
的第一個金鑰值組 (KVP),並將值指派到您要建立的評估欄位。
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