postgresql 中的行和宽度是什么解释?
what are rows and width in postgresql explain?
rows
和 width
在 PostgreSQL 中是什么意思?
我阅读了doc,其中谈到了“估计的行数”。我仍然不明白这些行是如何计算的,这意味着什么。
我 运行 解释了 2 个查询,都是 returns 12 行。一个用关联子查询,一个用join。
subquery explain:
XN HashAggregate (cost=812238052402.22..812238052402.23 rows=4 width=32)
Join explain:
XN HashAggregate (cost=6670401214317.72..6670401214317.75 rows=12 width=11)
我有 2 个问题?
- 我在两个查询中获取相同数量的列。那么
width
有什么不同呢?
- 如何解释
rows
?它们是如何计算的?
width
是以字节为单位的行的平均长度,计算为输出列的平均宽度之和。 Postresql 为任何列保存一些指标,其中一个是 avg_width
。它用于预期的内存分配。您可以在视图 pg_stats
.
中查看这些统计信息
有很多关于行估计的文章。您也可以在 PostgreSQL 文档中找到它 https://www.postgresql.org/docs/current/row-estimation-examples.html .
rows
和 width
在 PostgreSQL 中是什么意思?
我阅读了doc,其中谈到了“估计的行数”。我仍然不明白这些行是如何计算的,这意味着什么。
我 运行 解释了 2 个查询,都是 returns 12 行。一个用关联子查询,一个用join。
subquery explain:
XN HashAggregate (cost=812238052402.22..812238052402.23 rows=4 width=32)
Join explain:
XN HashAggregate (cost=6670401214317.72..6670401214317.75 rows=12 width=11)
我有 2 个问题?
- 我在两个查询中获取相同数量的列。那么
width
有什么不同呢? - 如何解释
rows
?它们是如何计算的?
width
是以字节为单位的行的平均长度,计算为输出列的平均宽度之和。 Postresql 为任何列保存一些指标,其中一个是 avg_width
。它用于预期的内存分配。您可以在视图 pg_stats
.
有很多关于行估计的文章。您也可以在 PostgreSQL 文档中找到它 https://www.postgresql.org/docs/current/row-estimation-examples.html .