如何在PostgreSQL中结合jsonb_array_elements使用BTRIM去除引号
PostgreSQL去除JSONB字段返回结果的双引号
直接提取文本值(推荐)
使用->>操作符替代->,可以直接获取JSON字段的纯文本内容,自动去掉双引号:
SELECT jsonb_array_elements(json_column->'Fields')->>'field_name' AS "column" FROM table_a;
结合BTRIM函数实现
如果必须用BTRIM处理,需要先将JSONB类型转换为文本类型,再剔除首尾的双引号:
SELECT BTRIM( jsonb_array_elements(json_column->'Fields')->'field_name'::TEXT, '"' ) AS "column" FROM table_a;
或者换一种写法,先展开JSON数组再处理字段,可读性更好:
SELECT BTRIM(field->'field_name'::TEXT, '"') AS "column" FROM table_a, jsonb_array_elements(json_column->'Fields') AS field;
执行结果
以上两种方法都能得到不带双引号的输出:
column Value1 Value2 Value3
内容的提问来源于stack exchange,提问作者Aki T
相关产品推荐
相关产品推荐

