explain.depesz.com

PostgreSQL's explain analyze made readable

Result: jFlG

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Limit (cost=965.58..966.60 rows=1 width=470) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on pddb_detection (cost=965.58..69,105.65 rows=66,470 width=470) (actual rows= loops=)

  • Recheck Cond: (((created_timestamp >= 1,592,008,300) AND (created_timestamp <= 1,592,008,400)) OR ((updated_timestamp >= 1,592,008,300) AND (updated_timestamp <= 1,592,008,400)) OR ((expire_at IS NOT NULL) AND (expire_at <= 1,592,008,400)))
  • Filter: (datasource >= 0)
3. 0.000 0.000 ↓ 0.0

BitmapOr (cost=965.58..965.58 rows=66,483 width=0) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on detection_created_timestamp_lookup_idx (cost=0.00..244.48 rows=17,790 width=0) (actual rows= loops=)

  • Index Cond: ((created_timestamp >= 1,592,008,300) AND (created_timestamp <= 1,592,008,400))
5. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on detection_updated_timestamp_lookup_idx (cost=0.00..669.52 rows=48,694 width=0) (actual rows= loops=)

  • Index Cond: ((updated_timestamp >= 1,592,008,300) AND (updated_timestamp <= 1,592,008,400))
6. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on detection_expireat_lookup_idx (cost=0.00..1.72 rows=1 width=0) (actual rows= loops=)

  • Index Cond: ((expire_at IS NOT NULL) AND (expire_at <= 1,592,008,400))