postgre数据库存在如下两个联合索引
![](https://img.haomeiwen.com/i2747346/56360cdfc6a1e2a5.png)
今天突然反馈
select * from batch where subsidy_id = 517669154614974520 and "status" = 1 很慢,竟然发现,这个语句走的索引是status、created_at的联合索引,人都麻了。
如果只有subsidy_id一个条件返回会走(subsidy_id, status)的联合索引。怀疑是数据库的统计信息不准确导致的。
直接执行
ANALYZE batch;
经过几分钟以后,正常了。
网友评论