You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让PostgreSQL的psql客户端输出EXPLAIN的合法JSON结果?

去除psql中EXPLAIN JSON输出冗余内容的方法

方法1:执行命令时指定psql参数

直接在调用psql执行命令时添加参数,一次性输出纯JSON:

psql -d 你的数据库名 -t -A -c "EXPLAIN (ANALYZE, FORMAT JSON) SELECT a FROM t;"
  • -t:关闭表头输出(去掉"QUERY PLAN")
  • -A:启用非对齐模式,移除换行处的+符号及多余空格

方法2:在psql会话内设置参数

如果已处于psql交互会话中,先执行以下设置命令,再运行EXPLAIN:

\pset tuples_only on
\pset format unaligned

设置完成后,执行EXPLAIN (ANALYZE, FORMAT JSON) SELECT a FROM t;即可得到无冗余的JSON输出。

方法3:用文本工具过滤已有输出

如果已经得到带冗余的输出,可通过sed等工具清理:

# 假设输出已保存到文件output.txt
sed '/QUERY PLAN/d; s/^+//' output.txt > clean.json

该命令会删除包含"QUERY PLAN"的行,并移除每行开头的+符号。

内容的提问来源于stack exchange,提问作者oran g

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 17:24:49