翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
parseJson
parseJson
を使用して、JSON オブジェクトから値を抽出します。
データセットが QuickSight SPICE に保存されている場合は、データセットの準備時に parseJson
を使用することができますが、分析中に計算フィールドで使用することはできません。
直接クエリの場合、parseJson
を使用して、データの準備中および分析中にも使用することができます。parseJson
関数は、次の表に示すように、ダイアレクトに応じて、文字列または JSON ネイティブデータ型のいずれかに適用されます。
ダイアレクト | タイプ |
---|---|
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