explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Pmoj

Settings
# exclusive inclusive rows x rows loops node
1. 75.365 90.777 ↓ 0.0 0 1

Insert on outfit_visit_count (cost=0.29..660.15 rows=10,000 width=16) (actual time=90.777..90.777 rows=0 loops=1)

  • Conflict Resolution: UPDATE
  • Conflict Arbiter Indexes: udx_outfit_visit_count_id_outfit
  • Tuples Inserted: 0
  • Conflicting Tuples: 10,000
2. 7.849 15.412 ↑ 1.0 10,000 1

Subquery Scan on *SELECT* (cost=0.29..660.15 rows=10,000 width=16) (actual time=0.025..15.412 rows=10,000 loops=1)

3. 0.865 7.563 ↑ 1.0 10,000 1

Limit (cost=0.29..510.15 rows=10,000 width=12) (actual time=0.019..7.563 rows=10,000 loops=1)

4. 3.822 6.698 ↑ 8.0 10,000 1

GroupAggregate (cost=0.29..4,086.15 rows=80,137 width=12) (actual time=0.018..6.698 rows=10,000 loops=1)

  • Group Key: outfit_visit_history.id_outfit
5. 2.876 2.876 ↑ 8.0 10,001 1

Index Scan using idx_outfit_visit_history_id_outfit on outfit_visit_history (cost=0.29..2,884.01 rows=80,155 width=8) (actual time=0.013..2.876 rows=10,001 loops=1)

  • Index Cond: (id_outfit > 20000)
  • Filter: (deleted_at IS NULL)
Planning time : 0.230 ms
Execution time : 90.846 ms