Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- EXPLAIN (ANALYZE, VERBOSE)
- SELECT concod,
- conparnum,
- conpardatven
- FROM contrato c
- JOIN contrato_parcela cp USING (concod)
- WHERE carcod = 100
- AND EXISTS (SELECT NULL
- FROM contrato_parcela x
- WHERE c.concod = x.concod --This is contrato_parcela's FK to contrato
- AND cp.conpardatven = x.conpardatven
- AND cp.conparnum = x.conparnum
- AND cp.conparseq <> x.conparseq) --This is contrato_parcela's PK
- GROUP BY 1,2,3
- /*************************************************************************************************/
- Group (cost=1379790.73..1379790.74 rows=1 width=14) (actual time=51808.985..51809.102 rows=86 loops=1)
- Output: c.concod, cp.conparnum, cp.conpardatven
- Group Key: c.concod, cp.conparnum, cp.conpardatven
- -> Sort (cost=1379790.73..1379790.73 rows=1 width=14) (actual time=51808.981..51809.014 rows=172 loops=1)
- Output: c.concod, cp.conparnum, cp.conpardatven
- Sort Key: c.concod, cp.conparnum, cp.conpardatven
- Sort Method: quicksort Memory: 33kB
- -> Gather (cost=35359.20..1379790.72 rows=1 width=14) (actual time=3572.598..51859.964 rows=172 loops=1)
- Output: c.concod, cp.conparnum, cp.conpardatven
- Workers Planned: 4
- Workers Launched: 4
- -> Nested Loop Semi Join (cost=34359.20..1378790.62 rows=1 width=14) (actual time=3224.256..51786.506 rows=34 loops=5)
- Output: c.concod, cp.conparnum, cp.conpardatven
- Join Filter: (c.concod = x.concod)
- Worker 0: actual time=3811.923..51783.808 rows=39 loops=1
- Worker 1: actual time=1240.729..51784.650 rows=28 loops=1
- Worker 2: actual time=2531.714..51786.597 rows=43 loops=1
- Worker 3: actual time=4965.242..51783.955 rows=37 loops=1
- -> Hash Join (cost=34358.64..756866.52 rows=863635 width=30) (actual time=1029.161..35813.552 rows=1357506 loops=5)
- Output: c.concod, cp.conparnum, cp.conpardatven, cp.concod, cp.conparseq
- Inner Unique: true
- Hash Cond: (cp.concod = c.concod)
- Worker 0: actual time=963.529..35750.176 rows=1361202 loops=1
- Worker 1: actual time=1113.639..35770.551 rows=1355952 loops=1
- Worker 2: actual time=977.507..35771.426 rows=1368738 loops=1
- Worker 3: actual time=1075.716..35858.450 rows=1335874 loops=1
- -> Parallel Seq Scan on public.contrato_parcela cp (cost=0.00..714671.57 rows=2985257 width=22) (actual time=0.413..32287.604 rows=2392501 loops=5)
- Output: cp.conparseq, cp.concod, cp.conparnum, cp.conpardatcad, cp.conpardatven, cp.conparvallan, cp.conpardadadi, cp.conparbancod, cp.conparage, cp.conparcon, cp.conparnumche, cp.conpardatapre, cp.conparborent, cp.conparali, cp.conparati, cp.conparusuinc, cp.conpardatatu, cp.conparusuatu, cp.conpardatinc, cp.conparacocod, cp.enccod, cp.conparstacal, cp.tiplancod, cp.conparidt, cp.conparvalsal, cp.conparvin, cp.conparboratu, cp.conparprocod, cp.conparpro, cp.conpartax, cp.conparvalori
- Worker 0: actual time=0.099..32319.105 rows=2398596 loops=1
- Worker 1: actual time=0.084..32164.313 rows=2386377 loops=1
- Worker 2: actual time=1.436..32323.692 rows=2407262 loops=1
- Worker 3: actual time=0.086..32233.843 rows=2369970 loops=1
- -> Hash (cost=23428.55..23428.55 rows=874407 width=8) (actual time=1022.949..1022.949 rows=879841 loops=5)
- Output: c.concod
- Buckets: 1048576 Batches: 1 Memory Usage: 42561kB
- Worker 0: actual time=956.301..956.301 rows=879841 loops=1
- Worker 1: actual time=1106.699..1106.699 rows=879841 loops=1
- Worker 2: actual time=970.613..970.613 rows=879841 loops=1
- Worker 3: actual time=1067.693..1067.693 rows=879841 loops=1
- -> Index Only Scan using contrato_iu0004 on public.contrato c (cost=0.43..23428.55 rows=874407 width=8) (actual time=0.117..677.143 rows=879841 loops=5)
- Output: c.concod
- Index Cond: (c.carcod = 100)
- Heap Fetches: 140454
- Worker 0: actual time=0.132..626.959 rows=879841 loops=1
- Worker 1: actual time=0.142..731.736 rows=879841 loops=1
- Worker 2: actual time=0.147..653.761 rows=879841 loops=1
- Worker 3: actual time=0.125..714.914 rows=879841 loops=1
- -> Index Scan using contrato_parcela_iu0010 on public.contrato_parcela x (cost=0.56..0.71 rows=1 width=22) (actual time=0.011..0.011 rows=0 loops=6787531)
- Output: x.conparseq, x.concod, x.conparnum, x.conpardatcad, x.conpardatven, x.conparvallan, x.conpardadadi, x.conparbancod, x.conparage, x.conparcon, x.conparnumche, x.conpardatapre, x.conparborent, x.conparali, x.conparati, x.conparusuinc, x.conpardatatu, x.conparusuatu, x.conpardatinc, x.conparacocod, x.enccod, x.conparstacal, x.tiplancod, x.conparidt, x.conparvalsal, x.conparvin, x.conparboratu, x.conparprocod, x.conparpro, x.conpartax, x.conparvalori
- Index Cond: ((x.conpardatven = cp.conpardatven) AND (x.concod = cp.concod))
- Filter: ((cp.conparseq <> x.conparseq) AND (cp.conparnum = x.conparnum))
- Rows Removed by Filter: 1
- Worker 0: actual time=0.011..0.011 rows=0 loops=1361202
- Worker 1: actual time=0.011..0.011 rows=0 loops=1355952
- Worker 2: actual time=0.010..0.010 rows=0 loops=1368738
- Worker 3: actual time=0.011..0.011 rows=0 loops=1335874
- Planning time: 1.839 ms
- Execution time: 51860.626 ms
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement