explain.depesz.com

PostgreSQL's explain analyze made readable

Result: jWAf

Settings
# exclusive inclusive rows x rows loops node
1. 0.046 38.251 ↓ 24.0 24 1

Limit (cost=4,441.49..4,441.50 rows=1 width=230) (actual time=38.120..38.251 rows=24 loops=1)

2. 0.066 38.205 ↓ 24.0 24 1

Unique (cost=4,441.49..4,441.50 rows=1 width=230) (actual time=38.118..38.205 rows=24 loops=1)

3. 0.086 38.139 ↓ 24.0 24 1

Sort (cost=4,441.49..4,441.50 rows=1 width=230) (actual time=38.115..38.139 rows=24 loops=1)

  • Sort Key: ""Vacancies"".""createdAt"" DESC, ""Vacancies"".""autoNumber"" DESC
  • Sort Method: quicksort Memory: 36kB
4. 0.126 38.053 ↓ 24.0 24 1

Nested Loop (cost=1.83..4,441.48 rows=1 width=230) (actual time=1.619..38.053 rows=24 loops=1)

5. 0.116 37.807 ↓ 24.0 24 1

Nested Loop Left Join (cost=1.55..4,433.18 rows=1 width=205) (actual time=1.610..37.807 rows=24 loops=1)

6. 15.719 37.571 ↓ 24.0 24 1

Nested Loop Left Join (cost=1.27..4,432.85 rows=1 width=201) (actual time=1.599..37.571 rows=24 loops=1)

  • Join Filter: ("Vacancies"."hospitalId" = "Hospitals".id)
  • Rows Removed by Join Filter: 12984
7. 0.154 6.180 ↓ 24.0 24 1

Nested Loop Left Join (cost=1.27..4,412.92 rows=1 width=172) (actual time=1.416..6.180 rows=24 loops=1)

  • Join Filter: ("RecruiterStatistics"."recruiterProfileId" = "RecruiterStatistics.RecruiterProfiles".id)
8. 0.271 5.546 ↓ 24.0 24 1

Nested Loop (cost=1.27..4,408.03 rows=1 width=161) (actual time=1.389..5.546 rows=24 loops=1)

9. 0.456 4.419 ↓ 107.0 107 1

Nested Loop Left Join (cost=0.84..4,397.19 rows=1 width=93) (actual time=0.054..4.419 rows=107 loops=1)

10. 3.428 3.428 ↓ 107.0 107 1

Index Scan using idx_vacancies_composite on "Vacancies" (cost=0.42..4,388.69 rows=1 width=81) (actual time=0.043..3.428 rows=107 loops=1)

  • Index Cond: ((""hospitalId"" = ANY ('{553,552,551,550,549,548,547,546,545,544,543,542,541,540,539,537,536,535,534,533,527,526,521,520,519,518,517,516,515,514,513,512,511,510,509,508,507,506,505,504,503,502,501,500,499,498,497,496,495,494,493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367,366,365,364,363,362,361,360,359,358,357,356,355,354,353,352,351,350,349,348,347,346,345,344,343,342,341,340,339,338,337,336,335,334,333,332,331,330,329,328,327,326,325,324,323,322,321,320,319,318,317,316,315,314,313,312,311,310,309,308,307,306,305,304,303,302,301,300,299,298,297,296,295,294,293,292,291,290,289,288,287,286,285,284,283,282,281,280,279,278,277,276,275,274,273,272,271,270,269,268,267,266,265,264,263,262,261,260,259,258,257,256,255,254,253,252,251,250,249,248,247,246,245,244,243,242,241,240,239,238,237,236,235,234,233,232,231,230,229,228,227,226,225,224,223,222,221,220,219,218,217,216,215,214,213,212,211,210,209,208,207,206,205,204,203,202,201,200,199,198,197,196,195,194,193,192,191,190,189,188,187,186,185,184,183,182,181,180,179,178,177,176,175,174,173,172,171,170,169,168,167,166,165,164,163,162,161,160,159,158,157,156,155,154,153,152,151,150,149,148,147,146,145,144,143,142,141,140,139,138,137,136,135,134,133,132,131,130,129,128,127,126,125,124,123,122,121,120,119,118,117,116,115,114,113,112,111,110,109,108,107,106,105,104,103,102,101,100,99,98,97,96,95,94,93,92,91,90,89,88,87,86,85,84,82,81,80,79,78,77,76,75,74,73,72,71,70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,51,50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1}'::integer[])) AND (""gradeId"" = ANY ('{6,5,4}'::integer[])) AND (""specialityId"" = 101))
  • Filter: ((status = 'Active'::"enum_Vacancies_status") AND ("vacancyType" = 1))
  • Rows Removed by Filter: 654
11. 0.535 0.535 ↓ 0.0 0 107

Index Scan using idx_job_broadcast_composite on "JobBroadCasts" (cost=0.42..8.49 rows=1 width=16) (actual time=0.005..0.005 rows=0 loops=107)

  • Index Cond: (("Vacancies".id = "vacancieId") AND ("recruiterId" = 123))
12. 0.856 0.856 ↓ 0.0 0 107

Index Scan using idx_recruiter_stats_composite on "RecruiterStatistics" (cost=0.43..10.83 rows=1 width=68) (actual time=0.007..0.008 rows=0 loops=107)

  • Index Cond: (("vacancieId" = "Vacancies".id) AND ("recruiterProfileId" = 123))
  • Filter: ("sentAll" > 0)
  • Rows Removed by Filter: 1
13. 0.480 0.480 ↑ 1.0 1 24

Seq Scan on "RecruiterProfiles" "RecruiterStatistics.RecruiterProfiles" (cost=0.00..4.88 rows=1 width=11) (actual time=0.014..0.020 rows=1 loops=24)

  • Filter: (id = 123)
  • Rows Removed by Filter: 153
14. 15.672 15.672 ↓ 1.0 542 24

Seq Scan on "Hospitals" (cost=0.00..13.30 rows=530 width=37) (actual time=0.003..0.653 rows=542 loops=24)

15. 0.120 0.120 ↑ 1.0 1 24

Index Only Scan using "CandidatesProfile_pkey" on "CandidatesProfile" "JobBroadCasts.CandidatesProfile" (cost=0.28..0.32 rows=1 width=4) (actual time=0.004..0.005 rows=1 loops=24)

  • Index Cond: (id = "JobBroadCasts"."candidateId")
  • Heap Fetches: 24
16. 0.120 0.120 ↑ 1.0 1 24

Index Scan using "HospitalSubSites_pkey" on "HospitalSubSites" (cost=0.28..8.29 rows=1 width=29) (actual time=0.004..0.005 rows=1 loops=24)

  • Index Cond: (id = "Vacancies"."hospitalSubSitesId")
Planning time : 2.763 ms
Execution time : 38.566 ms