我将 JSON 数据作为常规字符串存储在我的 Postgres 表中。当我在
psql
客户端中选择它们时,我希望这些字符串打印得漂亮,以便我可以更轻松地查看数据。
我可以在不通过外部程序运行输出的情况下执行此操作吗?
您可以使用函数
jsonb_pretty
——只需先将数据转换为类型jsonb
:
with data (text_json_blob) as (
values
('{"something":"simple"}'),
('{"foo":"bar", "qux":["toto","tata","titi","tutu"]}')
)
select
jsonb_pretty(text_json_blob :: jsonb) as nice_json
from
data;
输出(我使用
psql -A
启动客户端以去除一些无关的输出):
nice_json
{
"something": "simple"
}
{
"foo": "bar",
"qux": [
"toto",
"tata",
"titi",
"tutu"
]
}
(2 rows)
jsonb_pretty
已在 Postgres 9.5 中添加