首页 > 解决方案 > 如何使用 pl/pgsql 将字符的文本字段转换为 json?

问题描述

需要获取诸如“OT D”之类的文本字段并将其转换为 json 输出,例如:

"types": [
        "O",
        "T",
        "D"
    ],

这是使用 json_agg() 函数导出到 json 的整个查询的子输出。此代码适用于 t-sql:

JSON_QUERY('["' + replace(rtrim(ltrim(type)), ' ','","') + '"]')  as 'types',

ie 什么pl/pgsql 函数类似于t-sql JSON_QUERY?

标签: jsonplpgsql

解决方案


对此没有 PL/pgSQL 函数,但您可以使用 SQL 函数:

SELECT jsonb_agg(x) FROM regexp_split_to_table('O T D', ' ') AS x;

    jsonb_agg    
-----------------
 ["O", "T", "D"]
(1 row)

推荐阅读