explain.depesz.com

PostgreSQL's explain analyze made readable

Result: NLok : Optimization for: plan #NbR0

Settings

Optimization path:

# exclusive inclusive rows x rows loops node
1. 0.002 88.548 ↓ 23.0 23 1

Limit (cost=104,770.08..105,023.82 rows=1 width=8) (actual time=88.220..88.548 rows=23 loops=1)

2. 0.009 88.546 ↓ 23.0 23 1

Nested Loop (cost=104,770.08..105,023.82 rows=1 width=8) (actual time=88.219..88.546 rows=23 loops=1)

3. 0.003 88.147 ↑ 1.0 30 1

Limit (cost=104,769.65..104,769.72 rows=30 width=1,040) (actual time=88.143..88.147 rows=30 loops=1)

4. 0.038 88.144 ↑ 9.1 30 1

Sort (cost=104,769.65..104,770.33 rows=272 width=1,040) (actual time=88.143..88.144 rows=30 loops=1)

  • Sort Key: (similarity(searchclient.searchclient_nom, 'anne caudan'::text)) DESC
  • Sort Method: quicksort Memory: 27kB
5. 80.543 88.106 ↑ 4.8 57 1

Bitmap Heap Scan on searchclient (cost=2,965.81..104,761.62 rows=272 width=1,040) (actual time=14.686..88.106 rows=57 loops=1)

  • Recheck Cond: (searchclient_dossier_id = 43)
  • Filter: ((searchclient_meta ~~ '%AN%'::text) AND (searchclient_meta ~~ '%KTN%'::text))
  • Rows Removed by Filter: 111,634
  • Heap Blocks: exact=22,749
6. 7.563 7.563 ↓ 1.0 112,412 1

Bitmap Index Scan on searchclient_ak (cost=0.00..2,965.74 rows=112,175 width=0) (actual time=7.563..7.563 rows=112,412 loops=1)

  • Index Cond: (searchclient_dossier_id = 43)
7. 0.390 0.390 ↑ 1.0 1 30

Index Scan using client_dossierid_sk on client (cost=0.43..8.46 rows=1 width=4) (actual time=0.013..0.013 rows=1 loops=30)

  • Index Cond: ((client_dossier_id = 43) AND (client_id = searchclient.searchclient_client_id))
  • Filter: ((client_etat = 0) AND ((client_idechange <> ALL ('{11621909,8545558,9015314,11639299,7978129,8216173,49530210,25505857}'::integer[])) OR (client_idechange IS NULL)))
  • Rows Removed by Filter: 0