在postgresql中,当我运行时:
EXPLAIN (FORMAT JSON) SELECT * FROM ACCOUNT WHERE TYPE > 'CHK'
我得到:
[
{
"Plan": {
"Node Type": "Seq Scan",
"Parallel Aware": false,
"Relation Name": "account",
"Alias": "account",
"Startup Cost": 0.00,
"Total Cost": 13.25,
"Plan Rows": 87,
"Plan Width": 276,
"Filter": "((type)::text > 'CHK'::text)"
}
}
]
我怎样才能从那里得到“总成本”?我试过:
SELECT P -> 'Total Cost' FROM (
EXPLAIN (FORMAT JSON)
SELECT * FROM ACCOUNT WHERE TYPE > 'CHK'
) X (P)
但我得到了一个错误:
ERROR: syntax error at or near "JSON"
Position: 51
SQLState: 42601
1条答案
按热度按时间0ejtzxu11#
explain
总是需要在陈述之前,你不能把它放在陈述的中间。您可以通过将其 Package 到函数中来执行以下操作:
如果不能使用函数,则可以使用带有raise语句的匿名块:
但与使用相比,这似乎过于复杂:
然后简单地看第一行。