コンテンツにスキップ

ラムダ式を使って、JSONオブジェクトの各キーに変換を適用します。

JSON_MAP_TRANSFORM_KEYS(<json_object>, (<key>, <value>) -> <key_transformation>)

入力のJSONオブジェクトと同じ値を持ち、キーが指定したラムダ式の変換に従って変更されたJSONオブジェクトを返します。

次の例では、各キーに「_v1」を付加して、キーが変更された新しいJSONオブジェクトを作成します。

SELECT JSON_MAP_TRANSFORM_KEYS('{"name":"John", "role":"admin"}'::VARIANT, (k, v) -> CONCAT(k, '_v1')) AS versioned_metadata;
┌──────────────────────────────────────┐
│ versioned_metadata │
├──────────────────────────────────────┤
│ {"name_v1":"John","role_v1":"admin"} │
└──────────────────────────────────────┘