parseJson - Amazon QuickSight

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

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