我拥有的表数据大约有200万行,而我现在运行的查询只是从表中选择所有数据(选择*)。
这是一个非常天真的查询优化案例,但我想要理解的真正意图是解释分析。
以下是解释分析的输出和时间安排。
查询计划
Seq Scan on sample (cost=0.00..37929.83 rows=2185783 width=26) (actual time=0.065..348.752 rows=2185712 loops=1)
Planning time: 0.102 ms
Execution time: 463.020 ms
(3 rows)
因此,最大执行时间为0.3秒。
问题
我是数据库优化的新手,我只是想了解如何理解postgres中的解释分析以及如何实际估计查询运行时间以及如何确定是否需要对数据库方面进行任何改进?