explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 9JbKz

Settings
# exclusive inclusive rows x rows loops node
1. 0.018 1.910 ↓ 0.0 0 1

Sort (cost=38,525.95..38,525.96 rows=1 width=122) (actual time=1.910..1.910 rows=0 loops=1)

  • Sort Key: wqx.id
  • Sort Method: quicksort Memory: 25kB
2.          

CTE scps

3. 0.000 0.000 ↓ 0.0 0

Nested Loop (cost=54.81..7,278.23 rows=903 width=10) (never executed)

4. 0.000 0.000 ↓ 0.0 0

Hash Join (cost=54.39..6,852.52 rows=903 width=4) (never executed)

  • Hash Cond: (lab_cherry_pick.cherry_pick_request_id = cherry_pick_request.cherry_pick_request_id)
5. 0.000 0.000 ↓ 0.0 0

Seq Scan on lab_cherry_pick (cost=0.00..5,682.62 rows=295,062 width=8) (never executed)

6. 0.000 0.000 ↓ 0.0 0

Hash (cost=54.34..54.34 rows=4 width=4) (never executed)

7. 0.000 0.000 ↓ 0.0 0

Seq Scan on cherry_pick_request (cost=0.00..54.34 rows=4 width=4) (never executed)

  • Filter: (screen_id = 606)
8. 0.000 0.000 ↓ 0.0 0

Index Scan using screener_cherry_pick_pkey on screener_cherry_pick (cost=0.42..0.46 rows=1 width=14) (never executed)

  • Index Cond: (screener_cherry_pick_id = lab_cherry_pick.screener_cherry_pick_id)
9.          

CTE wqx

10. 0.012 0.035 ↓ 0.0 0 1

Sort (cost=6.06..6.07 rows=1 width=14) (actual time=0.035..0.035 rows=0 loops=1)

  • Sort Key: well_query_index.id
  • Sort Method: quicksort Memory: 25kB
11. 0.023 0.023 ↓ 0.0 0 1

Index Scan using well_query_unique on well_query_index (cost=0.29..6.05 rows=1 width=14) (actual time=0.023..0.023 rows=0 loops=1)

  • Index Cond: (query_id = 320)
12. 0.002 1.892 ↓ 0.0 0 1

Nested Loop (cost=9.33..31,241.64 rows=1 width=122) (actual time=1.892..1.892 rows=0 loops=1)

  • Join Filter: (well.library_id = library.library_id)
13. 0.002 1.890 ↓ 0.0 0 1

Nested Loop (cost=9.33..31,103.32 rows=1 width=115) (actual time=1.890..1.890 rows=0 loops=1)

  • Join Filter: (screen_result.screen_id = screen.screen_id)
14. 0.015 1.888 ↓ 0.0 0 1

Nested Loop (cost=9.33..30,900.90 rows=1 width=115) (actual time=1.888..1.888 rows=0 loops=1)

15. 1.801 1.801 ↑ 1.0 1 1

Index Scan using screen_result_screen_id_unique on screen_result (cost=0.28..45.79 rows=1 width=8) (actual time=0.797..1.801 rows=1 loops=1)

  • Filter: (screen_result_id = 169)
  • Rows Removed by Filter: 674
16. 0.002 0.072 ↓ 0.0 0 1

Nested Loop (cost=9.05..30,855.10 rows=1 width=115) (actual time=0.072..0.072 rows=0 loops=1)

17. 0.029 0.070 ↓ 0.0 0 1

Hash Right Join (cost=8.49..30,853.08 rows=1 width=93) (actual time=0.070..0.070 rows=0 loops=1)

  • Hash Cond: (reagent.well_id = well.well_id)
18. 0.000 0.000 ↓ 0.0 0

Seq Scan on reagent (cost=0.00..25,611.33 rows=1,395,533 width=34) (never executed)

19. 0.000 0.041 ↓ 0.0 0 1

Hash (cost=8.47..8.47 rows=1 width=69) (actual time=0.041..0.041 rows=0 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
20. 0.002 0.041 ↓ 0.0 0 1

Nested Loop (cost=0.43..8.47 rows=1 width=69) (actual time=0.041..0.041 rows=0 loops=1)

21. 0.039 0.039 ↓ 0.0 0 1

CTE Scan on wqx (cost=0.00..0.02 rows=1 width=36) (actual time=0.039..0.039 rows=0 loops=1)

22. 0.000 0.000 ↓ 0.0 0

Index Scan using well_pkey on well (cost=0.43..8.45 rows=1 width=33) (never executed)

  • Index Cond: (well_id = wqx.well_id)
23. 0.000 0.000 ↓ 0.0 0

Index Scan using assay_well_screen_result_id_key on assay_well (cost=0.56..2.01 rows=1 width=32) (never executed)

  • Index Cond: ((screen_result_id = 169) AND (well_id = well.well_id))
24. 0.000 0.000 ↓ 0.0 0

Seq Scan on screen (cost=0.00..185.52 rows=1,352 width=8) (never executed)

25. 0.000 0.000 ↓ 0.0 0

Seq Scan on library (cost=0.00..22.38 rows=338 width=15) (never executed)

26.          

SubPlan (forNested Loop)

27. 0.000 0.000 ↓ 0.0 0

CTE Scan on scps (cost=0.00..20.32 rows=5 width=0) (never executed)

  • Filter: (screened_well_id = wqx.well_id)
28. 0.000 0.000 ↓ 0.0 0

CTE Scan on scps scps_1 (cost=0.00..18.06 rows=903 width=32) (never executed)

29. 0.000 0.000 ↓ 0.0 0

Limit (cost=0.57..8.59 rows=1 width=8) (never executed)

30. 0.000 0.000 ↓ 0.0 0

Index Scan using result_value_data_column_and_well_index on result_value (cost=0.57..8.59 rows=1 width=8) (never executed)

  • Index Cond: ((data_column_id = 1371) AND (well_id = assay_well.well_id))
31. 0.000 0.000 ↓ 0.0 0

Limit (cost=0.57..8.59 rows=1 width=8) (never executed)

32. 0.000 0.000 ↓ 0.0 0

Index Scan using result_value_data_column_and_well_index on result_value result_value_1 (cost=0.57..8.59 rows=1 width=8) (never executed)

  • Index Cond: ((data_column_id = 1372) AND (well_id = assay_well.well_id))
33. 0.000 0.000 ↓ 0.0 0

Limit (cost=0.57..8.59 rows=1 width=8) (never executed)

34. 0.000 0.000 ↓ 0.0 0

Index Scan using result_value_data_column_and_well_index on result_value result_value_2 (cost=0.57..8.59 rows=1 width=8) (never executed)

  • Index Cond: ((data_column_id = 1379) AND (well_id = assay_well.well_id))
35. 0.000 0.000 ↓ 0.0 0

Limit (cost=0.57..8.59 rows=1 width=8) (never executed)

36. 0.000 0.000 ↓ 0.0 0

Index Scan using result_value_data_column_and_well_index on result_value result_value_3 (cost=0.57..8.59 rows=1 width=8) (never executed)

  • Index Cond: ((data_column_id = 1375) AND (well_id = assay_well.well_id))
37. 0.000 0.000 ↓ 0.0 0

Limit (cost=0.57..8.59 rows=1 width=8) (never executed)

38. 0.000 0.000 ↓ 0.0 0

Index Scan using result_value_data_column_and_well_index on result_value result_value_4 (cost=0.57..8.59 rows=1 width=8) (never executed)

  • Index Cond: ((data_column_id = 1378) AND (well_id = assay_well.well_id))
39. 0.000 0.000 ↓ 0.0 0

Limit (cost=0.57..8.59 rows=1 width=8) (never executed)

40. 0.000 0.000 ↓ 0.0 0

Index Scan using result_value_data_column_and_well_index on result_value result_value_5 (cost=0.57..8.59 rows=1 width=8) (never executed)

  • Index Cond: ((data_column_id = 1377) AND (well_id = assay_well.well_id))
41. 0.000 0.000 ↓ 0.0 0

Limit (cost=0.57..8.59 rows=1 width=8) (never executed)

42. 0.000 0.000 ↓ 0.0 0

Index Scan using result_value_data_column_and_well_index on result_value result_value_6 (cost=0.57..8.59 rows=1 width=8) (never executed)

  • Index Cond: ((data_column_id = 1373) AND (well_id = assay_well.well_id))
43. 0.000 0.000 ↓ 0.0 0

Limit (cost=0.57..8.59 rows=1 width=8) (never executed)

44. 0.000 0.000 ↓ 0.0 0

Index Scan using result_value_data_column_and_well_index on result_value result_value_7 (cost=0.57..8.59 rows=1 width=8) (never executed)

  • Index Cond: ((data_column_id = 1376) AND (well_id = assay_well.well_id))
45. 0.000 0.000 ↓ 0.0 0

Limit (cost=0.57..8.59 rows=1 width=3) (never executed)

46. 0.000 0.000 ↓ 0.0 0

Index Scan using result_value_data_column_and_well_index on result_value result_value_8 (cost=0.57..8.59 rows=1 width=3) (never executed)

  • Index Cond: ((data_column_id = 1374) AND (well_id = assay_well.well_id))
47. 0.000 0.000 ↓ 0.0 0

Nested Loop (cost=0.85..16.90 rows=1 width=4) (never executed)

48. 0.000 0.000 ↓ 0.0 0

Index Scan using silencing_reagent_pkey1 on silencing_reagent (cost=0.42..8.44 rows=1 width=4) (never executed)

  • Index Cond: (reagent_id = reagent.reagent_id)
49. 0.000 0.000 ↓ 0.0 0

Index Scan using gene_pkey1 on gene (cost=0.43..8.45 rows=1 width=8) (never executed)

  • Index Cond: (gene_id = silencing_reagent.vendor_gene_id)
50. 0.000 0.000 ↓ 0.0 0

Aggregate (cost=13.41..13.42 rows=1 width=7) (never executed)

51. 0.000 0.000 ↓ 0.0 0

Sort (cost=13.39..13.40 rows=1 width=11) (never executed)

  • Sort Key: gene_symbol.ordinal
52. 0.000 0.000 ↓ 0.0 0

Nested Loop (cost=1.28..13.38 rows=1 width=11) (never executed)

53. 0.000 0.000 ↓ 0.0 0

Nested Loop (cost=0.85..12.89 rows=1 width=8) (never executed)

54. 0.000 0.000 ↓ 0.0 0

Index Scan using silencing_reagent_pkey1 on silencing_reagent silencing_reagent_1 (cost=0.42..8.44 rows=1 width=4) (never executed)

  • Index Cond: (reagent_id = reagent.reagent_id)
55. 0.000 0.000 ↓ 0.0 0

Index Only Scan using gene_pkey1 on gene gene_1 (cost=0.43..4.45 rows=1 width=4) (never executed)

  • Index Cond: (gene_id = silencing_reagent_1.vendor_gene_id)
  • Heap Fetches: 0
56. 0.000 0.000 ↓ 0.0 0

Index Scan using gene_symbol_natural_key on gene_symbol (cost=0.43..0.48 rows=1 width=15) (never executed)

  • Index Cond: (gene_id = gene_1.gene_id)