跳到主要内容

MAP_TRANSFORM_KEYS

引入或更新于:v1.2.762

使用 Lambda 表达式 对 JSON 对象中的每个键应用转换。

语法

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

返回类型

返回一个 JSON 对象,其值与输入 JSON 对象相同,但键根据指定的 Lambda 转换进行了修改。

示例

此示例在每个键后追加 "_v1",创建一个键被修改的新 JSON 对象:

SELECT MAP_TRANSFORM_KEYS('{"name":"John", "role":"admin"}'::VARIANT, (k, v) -> CONCAT(k, '_v1')) AS versioned_metadata;

┌──────────────────────────────────────┐
│ versioned_metadata │
├──────────────────────────────────────┤
│ {"name_v1":"John","role_v1":"admin"} │
└──────────────────────────────────────┘
欢迎体验 Databend Cloud

基于 Rust + 对象存储构建的新一代多模态数仓,一个平台即可进行 BI、向量、全文检索及地理空间分析。

支持标准 SQL,自动弹性伸缩,助您快速构建现代化数据平台。

注册即领 ¥200 代金券。

注册体验