2025-10-20 postgresql 基础入门 , 全表扫描 , 查询优化 , 索引创建 , 查询规划器 , SQL性能 , 统计信息 13 分钟阅读PostgreSQL全表扫描慢到崩溃?建索引+改查询+更统计信息三招能破?全表扫描在PostgreSQL中会逐行读取表数据,适用于小表,但对大表会导致性能问题。查询规划器通过生成候选计划、计算代价并选择最优执行计划来优化查询。避免全表扫描的核心是为关键列创建索引,如WHERE子句、JOIN条件和排序/分组列。查询语句应避免前缀通配符、列函数和隐式类型转换,使用显式JOIN。统计信息的准确性对规划器决策至关重要,可通过ANALYZE …阅读更多 cmdragon
2025-10-06 postgresql 基础入门 , 查询执行生命周期 , 查询优化 , 代价模型 , 统计信息 , 索引 , 连接方式 14 分钟阅读PostgreSQL处理SQL居然像做蛋糕?解析到执行的4步里藏着多少查询优化的小心机?PostgreSQL处理SQL查询的过程分为解析、重写、规划和执行四个阶段。解析阶段将SQL字符串转换为解析树,重写阶段处理视图和规则,规划阶段选择最优执行计划,执行阶段按计划执行查询。代价模型通过计算IO和CPU成本来优化查询,统计信息影响成本计算的准确性。使用索引、选择合适的连接方式和提前过滤数据是优化查询的关键。定期更新统计信息和合理使用索引可避免性能 …阅读更多 cmdragon