explain.depesz.com

PostgreSQL's explain analyze made readable

Result: YEtA

Settings
# exclusive inclusive rows x rows loops node
1. 668,634.166 684,624.416 ↓ 0.0 0 1

Update on tmp_phones (cost=33.27..3,887,105.03 rows=83,950,320 width=313) (actual time=684,624.416..684,624.416 rows=0 loops=1)

2. 5,395.300 15,990.250 ↑ 21.5 3,903,172 1

Nested Loop (cost=33.27..3,887,105.03 rows=83,950,320 width=313) (actual time=0.070..15,990.250 rows=3,903,172 loops=1)

3. 10,594.950 10,594.950 ↑ 7.2 1,951,586 1

Seq Scan on tmp_phones (cost=0.00..948,760.20 rows=13,991,720 width=218) (actual time=0.016..10,594.950 rows=1,951,586 loops=1)

4. 0.000 0.000 ↑ 3.0 2 1,951,586

Materialize (cost=33.27..83.64 rows=6 width=69) (actual time=0.000..0.000 rows=2 loops=1,951,586)

5. 0.003 0.056 ↑ 3.0 2 1

Nested Loop (cost=33.27..83.61 rows=6 width=69) (actual time=0.048..0.056 rows=2 loops=1)

6. 0.004 0.039 ↑ 3.0 2 1

HashAggregate (cost=32.84..32.90 rows=6 width=88) (actual time=0.038..0.039 rows=2 loops=1)

  • Group Key: "ANY_subquery".rowid
7. 0.004 0.035 ↑ 3.0 2 1

Subquery Scan on ANY_subquery (cost=32.66..32.82 rows=6 width=88) (actual time=0.034..0.035 rows=2 loops=1)

8. 0.005 0.031 ↑ 3.0 2 1

GroupAggregate (cost=32.66..32.76 rows=6 width=38) (actual time=0.030..0.031 rows=2 loops=1)

  • Group Key: tmp_phones_1.person_no
9. 0.006 0.026 ↑ 3.0 2 1

Sort (cost=32.66..32.67 rows=6 width=14) (actual time=0.026..0.026 rows=2 loops=1)

  • Sort Key: tmp_phones_1.person_no
  • Sort Method: quicksort Memory: 25kB
10. 0.020 0.020 ↑ 3.0 2 1

Index Scan using ix_tmp_phones_searchperson on tmp_phones tmp_phones_1 (cost=0.56..32.58 rows=6 width=14) (actual time=0.018..0.020 rows=2 loops=1)

  • Index Cond: (pin = '985607'::text)
  • Filter: (phonetype_id <> ALL ('{10003,10005,10009}'::integer[]))
  • Rows Removed by Filter: 5
11. 0.014 0.014 ↑ 1.0 1 2

Index Scan using ix_tmp_phones_no on tmp_phones t (cost=0.43..8.45 rows=1 width=21) (actual time=0.007..0.007 rows=1 loops=2)

  • Index Cond: (rowid = "ANY_subquery".rowid)