首页 > 其他分享 >表量子查询改写真的就是体力活

表量子查询改写真的就是体力活

时间:2024-03-13 21:55:41浏览次数:23  
标签:rows .. text cb21 t1 改写 acb200 体力活 量子

慢SQL+执行计划:

explain analyze
SELECT t1.acb200,
    t1.aab001,
    t2.aab004,
    t2.bab004,
    t1.aab301,
    t1.aab302,
    t1.aab091,
    t1.aab02x,
    t1.aae006,
    t1.aae007,
    t1.acb205,
    t1.aae392,
    t1.aab092,
    t1.aae004,
    t1.aae005,
    t1.bae017,
    t1.aae014,
    t1.aae159,
    t1.aae393,
    t1.acb116,
    t1.star,
    t1.aah013,
    t1.acb20a,
    t1.acb20b,
    t1.acb20c,
    t1.acb20d,
    t1.acb20f,
    t1.dstatus,
    t1.dsource,
    t1.aae013,
    t1.aae011,
    t1.aae017,
    t1.aae036,
    t1.aae019,
    t1.aae020,
    t1.aae022,
    t1.aae024,
    t1.aae040,
    t1.aaf011,
    t1.aaf017,
    t1.aaf036,
    t1.aaf019,
    t1.aaf020,
    t1.aaf022,
    t1.aaf024,
    t1.label,
    t1.label_id,
    t2.aab01x,
    t1.acb20e,
    t1.aag013,
    t1.aag011,
    t1.aag017,
    t1.aag036,
    t1.aag019,
    t1.aag020,
    t1.aag022,
    t1.aag024,
    t1.bcb116,
    t1.sys_map_id,
    t1.aab022_sc,
    t2.aab048,
    t2.aab049,
    t2.aab020,
    t2.aab056,
    t2.aab022,
    t2.aab019,
    t2.aab003,
    t2.aab007,
    t2.aab998,
    t2.aab029,
    t2.aae045,
    t1.ade100,
    t2.ace752,
    t2.aab01z,
    ( SELECT t2_1.gpsx
           FROM cmap t2_1
          WHERE t2_1.fid   = t1.acb200  ) AS gpsx,
    ( SELECT t2_1.gpsy
           FROM cmap t2_1
          WHERE t2_1.fid   = t1.acb200  ) AS gpsy,
    ( SELECT count(*) AS count
           FROM cb35 t2_1
          WHERE t2_1.acb200   = t1.acb200  ) AS countcb35,
    ( SELECT count(*) AS count
           FROM ce21 t2_1
          WHERE t2_1.acb200   = t1.acb200  ) AS countce21,
    ( SELECT count(*) AS count
           FROM cb36 t2_1
          WHERE t2_1.acb200   = t1.acb200  ) AS countcb36,
    ( SELECT count(cb21.acb210) AS count
           FROM cb21
          WHERE cb21.acb200   = t1.acb200   AND (cb21.dstatus   = '0' OR cb21.dstatus   = '1'
 OR cb21.dstatus   = '-1' OR cb21.dstatus   = '-3')) AS zwzs,
    ( SELECT count(cb21.acb210) AS count
           FROM cb21
          WHERE cb21.acb200   = t1.acb200   AND (cb21.dstatus   = '0' OR cb21.dstatus   = '1'
 OR cb21.dstatus   = '-1' OR cb21.dstatus   = '-3') AND cb21.ace751   = '3'
  ) AS dsh,
    ( SELECT count(cb21.acb210) AS count
           FROM cb21
          WHERE cb21.acb200   = t1.acb200   AND (cb21.dstatus   = '0' OR cb21.dstatus   = '1'
 OR cb21.dstatus   = '-1' OR cb21.dstatus   = '-3') AND cb21.ace751   = '1'
  ) AS shtg,
    ( SELECT count(cb21.acb210) AS count
           FROM cb21
          WHERE cb21.acb200   = t1.acb200   AND (cb21.dstatus   = '0' OR cb21.dstatus   = '1'
 OR cb21.dstatus   = '-1' OR cb21.dstatus   = '-3') AND cb21.ace751   = '2'
  ) AS shbtg,
    ( SELECT count(cb21.acb210) AS count
           FROM cb21
          WHERE cb21.acb200   = t1.acb200   AND cb21.dstatus   = '1'  AND cb21.ace751   = '1' AND cb21.ace752   = '1') AS dqyxfb,
    ( SELECT max(cb21.aae397) AS max
           FROM cb21
          WHERE cb21.acb200   = t1.acb200   AND cb21.dstatus   = '1'  AND cb21.ace751   = 
'1'  AND cb21.ace752   = '1') AS zxfbrq,
    ( SELECT count(cb21.acb210) AS count
           FROM cb21
          WHERE cb21.acb200   = t1.acb200   AND (cb21.dstatus   = '0' OR cb21.dstatus   = '1'
 OR cb21.dstatus   = '-1' OR cb21.dstatus   = '-3') AND cb21.ace752   = '0'
  ) AS wfbs,
    ( SELECT count(*) AS count
           FROM cc2b t8
          WHERE t8.acb200   = t1.acb200   AND (t8.acc2bz   = '1'  OR t8.acc2bz   = '2'  OR t8.acc2bz   = '3' )) AS sdjls,
    ( SELECT count(*) AS count
           FROM cb2b t9
          WHERE t9.acb200   = t1.acb200  ) AS msyqs,
    ( SELECT count(*) AS count
           FROM cc2b t4
          WHERE t4.acb200   = t1.acb200   AND (t4.acc2bz   = '1'  OR t4.acc2bz   = '2' )) AS dmsjls,
    ( SELECT count(*) AS count
           FROM v_cc22_cb2c ta
          WHERE ta.acb200   = t1.acb200   AND ta.acb2c0 IS NULL) AS dfkjls,
    ( SELECT count(*) AS count
           FROM cb2b t3
          WHERE t3.acb200   = t1.acb200   AND t3.acb2b2   = '2' ) AS spmsyqs,
    ( SELECT count(*) AS count
           FROM cb2g t5
          WHERE t5.aab001   = t1.aab001   AND t5.acb2g9   = '1' ) AS jlbckcs,
    ( SELECT count(*) AS count
           FROM cb2g t6
          WHERE t6.aab001   = t1.aab001   AND t6.acb2ga   = '1' ) AS jlbsccs,
    ( SELECT count(*) AS count
           FROM cb2g t7
          WHERE t7.aab001   = t1.aab001   AND t7.acb2gb   = '1' ) AS jlbgzcs
   FROM cb20 t1,
    ab01 t2
  WHERE t1.aab001   = t2.aab001  ;
  
  
  
    QUERY PLAN      
                                                                                          
---------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
 Gather  (cost=18082.06..41742212.56 rows=60298 width=6284) (actual time=44.345..9982.260 rows=60293 loops=1)
   Workers Planned: 3
   Workers Launched: 3
   ->  Parallel Hash Join  (cost=17082.06..26780.63 rows=19451 width=5904) (actual time=38.275..85.551 rows=150
73 loops=4)
         Hash Cond: ((t1.aab001)::text = (t2.aab001)::text)
         ->  Parallel Seq Scan on cb20 t1  (cost=0.00..9647.51 rows=19451 width=5303) (actual time=0.017..7.843
 rows=15074 loops=4)
         ->  Parallel Hash  (cost=16687.03..16687.03 rows=31603 width=634) (actual time=37.969..37.970 rows=152
26 loops=4)
               Buckets: 131072  Batches: 1  Memory Usage: 14944kB
               ->  Parallel Seq Scan on ab01 t2  (cost=0.00..16687.03 rows=31603 width=634) (actual time=0.017.
.24.647 rows=15226 loops=4)
   SubPlan 1
     ->  Index Scan using idx_cmap_fid on cmap t2_1  (cost=0.27..8.29 rows=1 width=10) (actual time=0.002..0.00
2 rows=0 loops=60293)
           Index Cond: ((fid)::text = (t1.acb200)::text)
   SubPlan 2
     ->  Index Scan using idx_cmap_fid on cmap t2_1_1  (cost=0.27..8.29 rows=1 width=9) (actual time=0.001..0.0
01 rows=0 loops=60293)
           Index Cond: ((fid)::text = (t1.acb200)::text)
   SubPlan 3
     ->  Aggregate  (cost=19.81..19.82 rows=1 width=8) (actual time=0.004..0.004 rows=1 loops=60293)
           ->  Index Only Scan using idx_cb35_acb200_641d8a66_cd838e52 on cb35 t2_1_2  (cost=0.41..19.80 rows=4
 width=0) (actual time=0.003..0.003 rows=0 loops=60293)
                 Index Cond: (acb200 = (t1.acb200)::text)
                 Heap Fetches: 19106
   SubPlan 4
     ->  Aggregate  (cost=8.30..8.31 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=60293)
           ->  Index Only Scan using idx_ce21_acb200_e55c8666_e4eefd90 on ce21 t2_1_3  (cost=0.28..8.29 rows=1 
width=0) (actual time=0.002..0.002 rows=0 loops=60293)
                 Index Cond: (acb200 = (t1.acb200)::text)
                 Heap Fetches: 20
   SubPlan 5
     ->  Aggregate  (cost=273.84..273.85 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=60293)
           ->  Index Only Scan using idx_cb36_acb200_750f4546_19689f95 on cb36 t2_1_4  (cost=0.40..273.81 rows=
13 width=0) (actual time=0.002..0.002 rows=0 loops=60293)
                 Index Cond: (acb200 = (t1.acb200)::text)
                 Heap Fetches: 147
   SubPlan 6
     ->  Aggregate  (cost=52.32..52.33 rows=1 width=8) (actual time=0.009..0.009 rows=1 loops=60293)
           ->  Index Scan using idx_cb21_acb200_1310fdc6_ca7ca85a on cb21  (cost=0.42..52.29 rows=12 width=33) 
(actual time=0.004..0.008 rows=2 loops=60293)
                 Index Cond: ((acb200)::text = (t1.acb200)::text)
                 Filter: (((dstatus)::text = '0'::text) OR ((dstatus)::text = '1'::text) OR ((dstatus)::text = 
'-1'::text) OR ((dstatus)::text = '-3'::text))
                 Rows Removed by Filter: 0
   SubPlan 7
     ->  Aggregate  (cost=4.45..4.46 rows=1 width=8) (actual time=0.047..0.047 rows=1 loops=60293)
           ->  Index Scan using idx_cb21_ace751_d0e911c2_5c290edb on cb21 cb21_1  (cost=0.42..4.45 rows=1 width
=33) (actual time=0.046..0.046 rows=0 loops=60293)
                 Index Cond: ((ace751)::text = '3'::text)
                 Filter: (((acb200)::text = (t1.acb200)::text) AND (((dstatus)::text = '0'::text) OR ((dstatus)
::text = '1'::text) OR ((dstatus)::text = '-1'::text) OR ((dstatus)::text = '-3'::text)))
                 Rows Removed by Filter: 50
   SubPlan 8
     ->  Aggregate  (cost=52.35..52.36 rows=1 width=8) (actual time=0.005..0.005 rows=1 loops=60293)
           ->  Index Scan using idx_cb21_acb200_1310fdc6_ca7ca85a on cb21 cb21_2  (cost=0.42..52.32 rows=12 wid
th=33) (actual time=0.003..0.004 rows=2 loops=60293)
                 Index Cond: ((acb200)::text = (t1.acb200)::text)
                 Filter: (((ace751)::text = '1'::text) AND (((dstatus)::text = '0'::text) OR ((dstatus)::text =
 '1'::text) OR ((dstatus)::text = '-1'::text) OR ((dstatus)::text = '-3'::text)))
                 Rows Removed by Filter: 0
   SubPlan 9
     ->  Aggregate  (cost=4.45..4.46 rows=1 width=8) (actual time=0.036..0.036 rows=1 loops=60293)
           ->  Index Scan using idx_cb21_ace751_d0e911c2_5c290edb on cb21 cb21_3  (cost=0.42..4.45 rows=1 width
=33) (actual time=0.035..0.035 rows=0 loops=60293)
                 Index Cond: ((ace751)::text = '2'::text)
                 Filter: (((acb200)::text = (t1.acb200)::text) AND (((dstatus)::text = '0'::text) OR ((dstatus)
::text = '1'::text) OR ((dstatus)::text = '-1'::text) OR ((dstatus)::text = '-3'::text)))
                 Rows Removed by Filter: 35
   SubPlan 10
     ->  Aggregate  (cost=52.29..52.30 rows=1 width=8) (actual time=0.005..0.005 rows=1 loops=60293)
           ->  Index Scan using idx_cb21_acb200_1310fdc6_ca7ca85a on cb21 cb21_4  (cost=0.42..52.26 rows=12 wid
th=33) (actual time=0.002..0.004 rows=2 loops=60293)
                 Index Cond: ((acb200)::text = (t1.acb200)::text)
                 Filter: (((dstatus)::text = '1'::text) AND ((ace751)::text = '1'::text) AND ((ace752)::text = 
'1'::text))
                 Rows Removed by Filter: 0
   SubPlan 11
     ->  Aggregate  (cost=52.29..52.30 rows=1 width=8) (actual time=0.005..0.005 rows=1 loops=60293)
           ->  Index Scan using idx_cb21_acb200_1310fdc6_ca7ca85a on cb21 cb21_5  (cost=0.42..52.26 rows=12 wid
th=8) (actual time=0.002..0.004 rows=2 loops=60293)
                 Index Cond: ((acb200)::text = (t1.acb200)::text)
                 Filter: (((dstatus)::text = '1'::text) AND ((ace751)::text = '1'::text) AND ((ace752)::text = 
'1'::text))
                 Rows Removed by Filter: 0
   SubPlan 12
     ->  Aggregate  (cost=52.32..52.33 rows=1 width=8) (actual time=0.004..0.004 rows=1 loops=60293)
           ->  Index Scan using idx_cb21_acb200_1310fdc6_ca7ca85a on cb21 cb21_6  (cost=0.42..52.32 rows=1 widt
h=33) (actual time=0.004..0.004 rows=0 loops=60293)
                 Index Cond: ((acb200)::text = (t1.acb200)::text)
                 Filter: (((ace752)::text = '0'::text) AND (((dstatus)::text = '0'::text) OR ((dstatus)::text =
 '1'::text) OR ((dstatus)::text = '-1'::text) OR ((dstatus)::text = '-3'::text)))
                 Rows Removed by Filter: 2
   SubPlan 13
     ->  Aggregate  (cost=8.30..8.31 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=60293)
           ->  Index Scan using idx_cc2b_acb200_ce8ce986_c93f1a0d on cc2b t8  (cost=0.28..8.30 rows=1 width=0) 
(actual time=0.002..0.002 rows=0 loops=60293)
                 Index Cond: ((acb200)::text = (t1.acb200)::text)
                 Filter: (((acc2bz)::text = '1'::text) OR ((acc2bz)::text = '2'::text) OR ((acc2bz)::text = '3'
::text))
                 Rows Removed by Filter: 0
   SubPlan 14
     ->  Aggregate  (cost=8.30..8.31 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=60293)
           ->  Index Only Scan using idx_cb2b_aaf020_2816e0dc_1d8350ed on cb2b t9  (cost=0.28..8.29 rows=1 widt
h=0) (actual time=0.002..0.002 rows=0 loops=60293)
                 Index Cond: (acb200 = (t1.acb200)::text)
                 Heap Fetches: 46
   SubPlan 15
     ->  Aggregate  (cost=8.30..8.31 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=60293)
           ->  Index Scan using idx_cc2b_acb200_ce8ce986_c93f1a0d on cc2b t4  (cost=0.28..8.30 rows=1 width=0) 
(actual time=0.002..0.002 rows=0 loops=60293)
                 Index Cond: ((acb200)::text = (t1.acb200)::text)
                 Filter: (((acc2bz)::text = '1'::text) OR ((acc2bz)::text = '2'::text))
                 Rows Removed by Filter: 0
   SubPlan 16
     ->  Aggregate  (cost=44.41..44.42 rows=1 width=8) (actual time=0.013..0.013 rows=1 loops=60293)
           ->  Nested Loop Left Join  (cost=0.28..44.41 rows=1 width=0) (actual time=0.012..0.012 rows=0 loops=
60293)
                 Filter: (b.acb2c0 IS NULL)
                 Rows Removed by Filter: 0
                 ->  Seq Scan on cc22 a  (cost=0.00..11.20 rows=4 width=33) (actual time=0.011..0.011 rows=0 lo
ops=60293)
                       Filter: ((acb200)::text = (t1.acb200)::text)
                       Rows Removed by Filter: 32
                 ->  Index Scan using idx_cb2c_acc220_e95e0740_45eb90e2 on cb2c b  (cost=0.28..8.29 rows=1 widt
h=66) (actual time=0.005..0.006 rows=0 loops=24)
                       Index Cond: ((acc220)::text = (a.acc220)::text)
   SubPlan 17
     ->  Aggregate  (cost=8.30..8.31 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=60293)
           ->  Index Scan using idx_cb2b_aaf020_2816e0dc_1d8350ed on cb2b t3  (cost=0.28..8.30 rows=1 width=0) 
(actual time=0.002..0.002 rows=0 loops=60293)
                 Index Cond: ((acb200)::text = (t1.acb200)::text)
                 Filter: ((acb2b2)::text = '2'::text)
                 Rows Removed by Filter: 0
   SubPlan 18
     ->  Aggregate  (cost=8.30..8.31 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=60293)
           ->  Index Scan using idx_cb2g_aab001_21334c80_421ac83 on cb2g t5  (cost=0.28..8.30 rows=1 width=0) (
actual time=0.002..0.002 rows=0 loops=60293)
                 Index Cond: ((aab001)::text = (t1.aab001)::text)
                 Filter: ((acb2g9)::text = '1'::text)
                 Rows Removed by Filter: 0
   SubPlan 19
     ->  Aggregate  (cost=8.30..8.31 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=60293)
           ->  Index Scan using idx_cb2g_aab001_21334c80_421ac83 on cb2g t6  (cost=0.28..8.30 rows=1 width=0) (
actual time=0.001..0.001 rows=0 loops=60293)
                 Index Cond: ((aab001)::text = (t1.aab001)::text)
                 Filter: ((acb2ga)::text = '1'::text)
                 Rows Removed by Filter: 0
   SubPlan 20
     ->  Aggregate  (cost=8.30..8.31 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=60293)
           ->  Index Scan using idx_cb2g_aab001_21334c80_421ac83 on cb2g t7  (cost=0.28..8.30 rows=1 width=0) (
actual time=0.001..0.001 rows=0 loops=60293)
                 Index Cond: ((aab001)::text = (t1.aab001)::text)
                 Filter: ((acb2gb)::text = '1'::text)
                 Rows Removed by Filter: 0
 Planning Time: 2.713 ms
 Execution Time: 9988.475 ms
(125 行记录)

等价改写优化:

SELECT * FROM ( -- 60293
WITH cb21 AS(SELECT * FROM cb21 WHERE  cb21.dstatus IN ('0','1','-1','-3') AND cb21.ace751 IN('1','2','3') AND cb21.ace752 IN ('0','1')),
     cc2b AS(SELECT * FROM cc2b t8 WHERE t8.acc2bz IN ('1' ,'2','3')),
     cb2b AS (SELECT * FROM cb2b),
     cb2g AS (SELECT * FROM cb2g WHERE  acb2g9   = '1'  OR acb2ga   = '1' OR acb2gb   = '1')
SELECT 
t1.acb200,
    t1.aab001,
    t2.aab004,
    t2.bab004,
    t1.aab301,
    t1.aab302,
    t1.aab091,
    t1.aab02x,
    t1.aae006,
    t1.aae007,
    t1.acb205,
    t1.aae392,
    t1.aab092,
    t1.aae004,
    t1.aae005,
    t1.bae017,
    t1.aae014,
    t1.aae159,
    t1.aae393,
    t1.acb116,
    t1.star,
    t1.aah013,
    t1.acb20a,
    t1.acb20b,
    t1.acb20c,
    t1.acb20d,
    t1.acb20f,
    t1.dstatus,
    t1.dsource,
    t1.aae013,
    t1.aae011,
    t1.aae017,
    t1.aae036,
    t1.aae019,
    t1.aae020,
    t1.aae022,
    t1.aae024,
    t1.aae040,
    t1.aaf011,
    t1.aaf017,
    t1.aaf036,
    t1.aaf019,
    t1.aaf020,
    t1.aaf022,
    t1.aaf024,
    t1.label,
    t1.label_id,
    t2.aab01x,
    t1.acb20e,
    t1.aag013,
    t1.aag011,
    t1.aag017,
    t1.aag036,
    t1.aag019,
    t1.aag020,
    t1.aag022,
    t1.aag024,
    t1.bcb116,
    t1.sys_map_id,
    t1.aab022_sc,
    t2.aab048,
    t2.aab049,
    t2.aab020,
    t2.aab056,
    t2.aab022,
    t2.aab019,
    t2.aab003,
    t2.aab007,
    t2.aab998,
    t2.aab029,
    t2.aae045,
    t1.ade100,
    t2.ace752,
    t2.aab01z,
    t2_1.gpsx                                                             AS gpsx,  -- 等价
    t2_1.gpsy                                                             AS gpsy,  -- 等价
    COALESCE(t2_1_1.cnt            ,0)                                     AS countcb35,    -- 等价                                   
    COALESCE(t2_1_2.cnt            ,0)                                     AS countce21,    -- 等价                                   
    COALESCE(t2_1_3.cnt            ,0)                                     AS countcb36,    -- 等价                                   
    COALESCE(cb21_1.cnt         ,0)                                        AS zwzs,         -- 等价                                   
    COALESCE(cb21_2.cnt         ,0)                                     AS dsh,          -- 等价                                   
    COALESCE(cb21_3.cnt         ,0)                                     AS shtg,         -- 等价                                   
    COALESCE(cb21_4.cnt         ,0)                                     AS shbtg,         -- 等价                                  
    COALESCE(cb21_5.cnt         ,0)                                     AS dqyxfb,         -- 等价                                 
    cb21_6.amax                                                         AS zxfbrq,            -- 等价                                    
    COALESCE(cb21_7.cnt         ,0)                                     AS wfbs ,            -- 等价                              
     COALESCE(cc2b_1.cnt            ,0)                                        AS sdjls,        -- 等价                                             
    COALESCE(cb2b_1.cnt         ,0)                                        AS msyqs,              -- 等价                                        
   COALESCE(cc2b_2.cnt            ,0)                                        AS dmsjls ,                                               
    COALESCE(ta.cnt                ,0)                                        AS dfkjls,                                                 
    COALESCE(cb2b_2.cnt            ,0)                                        AS spmsyqs,                                                
    COALESCE(cb2g_1.cnt         ,0)                                          AS jlbckcs,
    COALESCE(cb2g_2.cnt         ,0)                                          AS jlbsccs,
    COALESCE(cb2g_3.cnt         ,0)                                          AS jlbgzcs 
   FROM cb20 t1 INNER JOIN ab01 t2      ON t1.aab001   = t2.aab001  
                LEFT  JOIN cmap t2_1 ON t2_1.fid   = t1.acb200
                LEFT  JOIN (SELECT acb200 , count(*) cnt FROM cb35  GROUP BY acb200) t2_1_1 ON t2_1_1.acb200 = t1.acb200
                LEFT  JOIN (SELECT acb200 , count(*) cnt FROM ce21  GROUP BY acb200) t2_1_2 ON t2_1_2.acb200 = t1.acb200
                LEFT  JOIN (SELECT acb200 , count(*) cnt FROM cb36  GROUP BY acb200) t2_1_3 ON t2_1_3.acb200 = t1.acb200
                LEFT  JOIN (SELECT cb21.acb200,count(cb21.acb210) cnt  FROM cb21 WHERE cb21.dstatus IN ('0','1','-1','-3')                                       GROUP BY cb21.acb200)  cb21_1 ON cb21_1.acb200   = t1.acb200
                LEFT  JOIN (SELECT cb21.acb200,count(cb21.acb210) cnt  FROM cb21 WHERE cb21.dstatus IN ('0','1','-1','-3') AND cb21.ace751   = '3'            GROUP BY cb21.acb200)  cb21_2 ON cb21_2.acb200   = t1.acb200
                LEFT  JOIN (SELECT cb21.acb200,count(cb21.acb210) cnt  FROM cb21 WHERE cb21.dstatus IN ('0','1','-1','-3') AND cb21.ace751   = '1'            GROUP BY cb21.acb200)  cb21_3 ON cb21_3.acb200   = t1.acb200
                LEFT  JOIN (SELECT cb21.acb200,count(cb21.acb210) cnt  FROM cb21 WHERE cb21.dstatus IN ('0','1','-1','-3') AND cb21.ace751   = '2'            GROUP BY cb21.acb200)  cb21_4 ON cb21_4.acb200   = t1.acb200
                LEFT  JOIN (SELECT cb21.acb200,count(cb21.acb210) cnt  FROM cb21 WHERE cb21.dstatus   = '1'  AND cb21.ace751 = '1' AND cb21.ace752   = '1'  GROUP BY cb21.acb200)  cb21_5 ON cb21_5.acb200   = t1.acb200
                LEFT  JOIN (SELECT cb21.acb200,max(cb21.aae397)   amax  FROM cb21 WHERE cb21.dstatus   = '1'  AND cb21.ace751 = '1'  AND cb21.ace752   = '1' GROUP BY cb21.acb200) cb21_6 ON cb21_6.acb200   = t1.acb200
                LEFT  JOIN (SELECT cb21.acb200,count(cb21.acb210) cnt  FROM cb21 WHERE cb21.dstatus IN ('0','1','-1','-3') AND cb21.ace752   = '0'          GROUP BY cb21.acb200)  cb21_7 ON cb21_7.acb200   = t1.acb200
                LEFT  JOIN (SELECT acb200,COUNT(1) as cnt FROM cc2b WHERE acc2bz IN ('1' ,'2','3') GROUP BY acb200) cc2b_1 ON cc2b_1.acb200 = t1.acb200
                LEFT  JOIN (SELECT acb200,COUNT(1) as cnt FROM cc2b WHERE acc2bz IN ('1' ,'2')     GROUP BY acb200) cc2b_2 ON cc2b_2.acb200 = t1.acb200
                LEFT  JOIN (SELECT acb200,count(1) cnt FROM cb2b GROUP BY acb200)                        cb2b_1 ON cb2b_1.acb200 = t1.acb200
                LEFT  JOIN (SELECT acb200,count(1) cnt FROM cb2b WHERE acb2b2   = '2' GROUP BY acb200) cb2b_2 ON cb2b_2.acb200 = t1.acb200
                LEFT  JOIN (SELECT count(1) cnt , acb200 FROM v_cc22_cb2c WHERE acb2c0 IS NULL GROUP BY acb200) ta ON ta.acb200 = t1.acb200
                LEFT  JOIN (SELECT aab001,count(1) cnt  FROM cb2g WHERE acb2g9   = '1' GROUP BY aab001) cb2g_1 ON cb2g_1.aab001   = t1.aab001
                LEFT  JOIN (SELECT aab001,count(1) cnt  FROM cb2g WHERE acb2ga   = '1' GROUP BY aab001) cb2g_2 ON cb2g_2.aab001   = t1.aab001
                LEFT  JOIN (SELECT aab001,count(1) cnt  FROM cb2g WHERE acb2gb   = '1' GROUP BY aab001) cb2g_3 ON cb2g_3.aab001   = t1.aab001 
                ) x 
                ;
 
                                                                                                               QUERY PLAN                              
                                                                                    
---------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
 Hash Left Join  (cost=85835.02..106520.74 rows=60298 width=163) (actual time=1758.644..2221.320 rows=60293 loops=1)
   Hash Cond: ((t1.aab001)::text = (cb2g_3.aab001)::text)
   CTE cb21
     ->  Seq Scan on cb21 cb21_14  (cost=0.00..46231.85 rows=115957 width=3317) (actual time=0.027..268.716 rows=115923 loops=1)
           Filter: (((ace752)::text = ANY ('{0,1}'::text[])) AND ((ace751)::text = ANY ('{1,2,3}'::text[])) AND ((dstatus)::text = ANY ('{0,1,-1,-3}'::te
xt[])))
           Rows Removed by Filter: 82
   CTE cc2b
     ->  Seq Scan on cc2b t8  (cost=0.00..237.71 rows=1044 width=796) (actual time=0.037..1.067 rows=1044 loops=1)
           Filter: ((acc2bz)::text = ANY ('{1,2,3}'::text[]))
           Rows Removed by Filter: 26
   CTE cb2b
     ->  Seq Scan on cb2b cb2b_4  (cost=0.00..166.92 rows=1092 width=2554) (actual time=0.014..0.362 rows=1050 loops=1)
   CTE cb2g
     ->  Seq Scan on cb2g cb2g_6  (cost=0.00..141.27 rows=1044 width=829) (actual time=0.012..0.674 rows=1107 loops=1)
           Filter: (((acb2g9)::text = '1'::text) OR ((acb2ga)::text = '1'::text) OR ((acb2gb)::text = '1'::text))
           Rows Removed by Filter: 14
   ->  Hash Left Join  (cost=39033.52..59560.94 rows=60298 width=188) (actual time=1756.963..2186.922 rows=60293 loops=1)
         Hash Cond: ((t1.aab001)::text = (cb2g_2.aab001)::text)
         ->  Hash Left Join  (cost=39009.77..59378.90 rows=60298 width=180) (actual time=1755.200..2166.051 rows=60293 loops=1)
               Hash Cond: ((t1.aab001)::text = (cb2g_1.aab001)::text)
               ->  Hash Left Join  (cost=38986.03..59196.86 rows=60298 width=172) (actual time=1752.585..2144.321 rows=60293 loops=1)
                     Hash Cond: ((t1.acb200)::text = (a.acb200)::text)
                     ->  Hash Left Join  (cost=38857.97..58910.52 rows=60298 width=197) (actual time=1752.376..2129.311 rows=60293 loops=1)
                           Hash Cond: ((t1.acb200)::text = (cb2b_2.acb200)::text)
                           ->  Hash Left Join  (cost=38833.15..58727.39 rows=60298 width=189) (actual time=1751.816..2111.998 rows=60293 loops=1)
                                 Hash Cond: ((t1.acb200)::text = (cb2b_1.acb200)::text)
                                 ->  Hash Left Join  (cost=38799.35..58535.30 rows=60298 width=181) (actual time=1749.674..2091.094 rows=60293 loops=1)
                                       Hash Cond: ((t1.acb200)::text = (cc2b_2.acb200)::text)
                                       ->  Hash Left Join  (cost=38775.29..58352.95 rows=60298 width=173) (actual time=1747.746..2070.861 rows=60293 loop
s=1)
                                             Hash Cond: ((t1.acb200)::text = (cc2b_1.acb200)::text)
                                             ->  Hash Left Join  (cost=38749.93..58169.30 rows=60298 width=165) (actual time=1744.963..2049.074 rows=6029
3 loops=1)
                                                   Hash Cond: ((t1.acb200)::text = (cb21_7.acb200)::text)
                                                   ->  Hash Left Join  (cost=35560.41..54821.49 rows=60298 width=157) (actual time=1670.982..1959.360 row
s=60293 loops=1)
                                                         Hash Cond: ((t1.acb200)::text = (cb21_6.acb200)::text)
                                                         ->  Hash Left Join  (cost=32371.54..51474.33 rows=60298 width=149) (actual time=1450.036..1711.6
73 rows=60293 loops=1)
                                                               Hash Cond: ((t1.acb200)::text = (cb21_5.acb200)::text)
                                                               ->  Hash Left Join  (cost=29182.67..48127.16 rows=60298 width=141) (actual time=1206.695..
1440.051 rows=60293 loops=1)
                                                                     Hash Cond: ((t1.acb200)::text = (cb21_4.acb200)::text)
                                                                     ->  Hash Left Join  (cost=25993.16..44779.36 rows=60298 width=133) (actual time=1132
.026..1350.596 rows=60293 loops=1)
                                                                           Hash Cond: ((t1.acb200)::text = (cb21_3.acb200)::text)
                                                                           ->  Hash Left Join  (cost=22803.65..41431.55 rows=60298 width=125) (actual tim
e=882.315..1071.493 rows=60293 loops=1)
                                                                                 Hash Cond: ((t1.acb200)::text = (cb21_2.acb200)::text)
                                                                                 ->  Hash Left Join  (cost=19614.14..38083.75 rows=60298 width=117) (actu
al time=807.346..981.344 rows=60293 loops=1)
                                                                                       Hash Cond: ((t1.acb200)::text = (cb21_1.acb200)::text)
                                                                                       ->  Hash Left Join  (cost=16697.12..35008.43 rows=60298 width=109)
 (actual time=72.965..217.540 rows=60293 loops=1)
                                                                                             Hash Cond: ((t1.acb200)::text = (t2_1_3.acb200)::text)
                                                                                             ->  Hash Left Join  (cost=14231.50..32384.52 rows=60298 widt
h=101) (actual time=70.667..200.750 rows=60293 loops=1)
                                                                                                   Hash Cond: ((t1.acb200)::text = (t2_1_2.acb200)::text)
                                                                                                   ->  Hash Left Join  (cost=14079.89..32074.61 rows=6029
8 width=93) (actual time=69.079..183.247 rows=60293 loops=1)
                                                                                                         Hash Cond: ((t1.acb200)::text = (t2_1_1.acb200):
:text)
                                                                                                         ->  Hash Left Join  (cost=10821.28..28657.72 row
s=60298 width=85) (actual time=50.980..144.507 rows=60293 loops=1)
                                                                                                               Hash Cond: ((t1.acb200)::text = (t2_1.fid)
::text)
                                                                                                               ->  Hash Join  (cost=10809.70..28417.56 ro
ws=60298 width=66) (actual time=50.820..129.392 rows=60293 loops=1)
                                                                                                                     Hash Cond: ((t2.aab001)::text = (t1.
aab001)::text)
                                                                                                                     ->  Seq Scan on ab01 t2  (cost=0.00.
.17350.68 rows=97968 width=33) (actual time=0.014..35.611 rows=60905 loops=1)
                                                                                                                     ->  Hash  (cost=10055.98..10055.98 r
ows=60298 width=66) (actual time=50.747..50.747 rows=60298 loops=1)
                                                                                                                           Buckets: 65536  Batches: 1  Me
mory Usage: 6283kB
                                                                                                                           ->  Seq Scan on cb20 t1  (cost
=0.00..10055.98 rows=60298 width=66) (actual time=0.006..30.571 rows=60298 loops=1)
                                                                                                               ->  Hash  (cost=8.48..8.48 rows=248 width=
52) (actual time=0.147..0.147 rows=246 loops=1)
                                                                                                                     Buckets: 1024  Batches: 1  Memory Us
age: 29kB
                                                                                                                     ->  Seq Scan on cmap t2_1  (cost=0.0
0..8.48 rows=248 width=52) (actual time=0.015..0.075 rows=248 loops=1)
                                                                                                         ->  Hash  (cost=3203.40..3203.40 rows=4416 width
=41) (actual time=18.079..18.080 rows=4420 loops=1)
                                                                                                               Buckets: 8192  Batches: 1  Memory Usage: 3
80kB
                                                                                                               ->  Subquery Scan on t2_1_1  (cost=3115.08
..3203.40 rows=4416 width=41) (actual time=15.494..16.995 rows=4420 loops=1)
                                                                                                                     ->  HashAggregate  (cost=3115.08..31
59.24 rows=4416 width=41) (actual time=15.493..16.569 rows=4420 loops=1)
                                                                                                                           Group Key: cb35.acb200
                                                                                                                           ->  Seq Scan on cb35  (cost=0.
00..3019.72 rows=19072 width=33) (actual time=0.012..7.302 rows=19107 loops=1)
                                                                                                   ->  Hash  (cost=138.62..138.62 rows=1039 width=41) (ac
tual time=1.564..1.566 rows=1008 loops=1)
                                                                                                         Buckets: 2048  Batches: 1  Memory Usage: 88kB
                                                                                                         ->  Subquery Scan on t2_1_2  (cost=117.85..138.6
2 rows=1039 width=41) (actual time=1.025..1.331 rows=1009 loops=1)
                                                                                                               ->  HashAggregate  (cost=117.85..128.24 ro
ws=1039 width=41) (actual time=1.023..1.232 rows=1009 loops=1)
                                                                                                                     Group Key: ce21.acb200
                                                                                                                     ->  Seq Scan on ce21  (cost=0.00..11
2.23 rows=1123 width=33) (actual time=0.016..0.414 rows=1091 loops=1)
                                                                                             ->  Hash  (cost=2465.47..2465.47 rows=12 width=41) (actual t
ime=2.288..2.289 rows=12 loops=1)
                                                                                                   Buckets: 1024  Batches: 1  Memory Usage: 9kB
                                                                                                   ->  Subquery Scan on t2_1_3  (cost=2464.08..2465.47 ro
ws=12 width=41) (actual time=2.245..2.283 rows=12 loops=1)
                                                                                                         ->  GroupAggregate  (cost=2464.08..2465.35 rows=
12 width=41) (actual time=2.243..2.279 rows=12 loops=1)
                                                                                                               Group Key: cb36.acb200
                                                                                                               ->  Sort  (cost=2464.08..2464.46 rows=153 
width=33) (actual time=2.232..2.240 rows=153 loops=1)
                                                                                                                     Sort Key: cb36.acb200
                                                                                                                     Sort Method: quicksort  Memory: 36kB
                                                                                                                     ->  Seq Scan on cb36  (cost=0.00..24
58.53 rows=153 width=33) (actual time=0.011..2.157 rows=153 loops=1)
                                                                                       ->  Hash  (cost=2914.52..2914.52 rows=200 width=90) (actual time=7
34.353..734.354 rows=12901 loops=1)
                                                                                             Buckets: 16384 (originally 1024)  Batches: 1 (originally 1) 
 Memory Usage: 1048kB
                                                                                             ->  Subquery Scan on cb21_1  (cost=2910.52..2914.52 rows=200
 width=90) (actual time=724.992..730.092 rows=12901 loops=1)
                                                                                                   ->  HashAggregate  (cost=2910.52..2912.52 rows=200 wid
th=90) (actual time=724.991..728.855 rows=12901 loops=1)
                                                                                                         Group Key: cb21.acb200
                                                                                                         ->  CTE Scan on cb21  (cost=0.00..2898.93 rows=2
319 width=164) (actual time=0.039..666.222 rows=115923 loops=1)
                                                                                                               Filter: ((dstatus)::text = ANY ('{0,1,-1,-
3}'::text[]))
                                                                                 ->  Hash  (cost=3189.36..3189.36 rows=12 width=90) (actual time=74.950..
74.951 rows=7 loops=1)
                                                                                       Buckets: 1024  Batches: 1  Memory Usage: 9kB
                                                                                       ->  Subquery Scan on cb21_2  (cost=3189.03..3189.36 rows=12 width=
90) (actual time=74.929..74.942 rows=7 loops=1)
                                                                                             ->  GroupAggregate  (cost=3189.03..3189.24 rows=12 width=90)
 (actual time=74.928..74.939 rows=7 loops=1)
                                                                                                   Group Key: cb21_8.acb200
                                                                                                   ->  Sort  (cost=3189.03..3189.06 rows=12 width=164) (a
ctual time=74.914..74.916 rows=26 loops=1)
                                                                                                         Sort Key: cb21_8.acb200
                                                                                                         Sort Method: quicksort  Memory: 28kB
                                                                                                         ->  CTE Scan on cb21 cb21_8  (cost=0.00..3188.82
 rows=12 width=164) (actual time=0.010..74.882 rows=26 loops=1)
                                                                                                               Filter: (((ace751)::text = '3'::text) AND 
((dstatus)::text = ANY ('{0,1,-1,-3}'::text[])))
                                                                                                               Rows Removed by Filter: 115897
                                                                           ->  Hash  (cost=3189.36..3189.36 rows=12 width=90) (actual time=249.687..249.6
89 rows=12899 loops=1)
                                                                                 Buckets: 16384 (originally 1024)  Batches: 1 (originally 1)  Memory Usag
e: 1048kB
                                                                                 ->  Subquery Scan on cb21_3  (cost=3189.03..3189.36 rows=12 width=90) (a
ctual time=191.225..245.617 rows=12899 loops=1)
                                                                                       ->  GroupAggregate  (cost=3189.03..3189.24 rows=12 width=90) (actu
al time=191.224..244.209 rows=12899 loops=1)
                                                                                             Group Key: cb21_9.acb200
                                                                                             ->  Sort  (cost=3189.03..3189.06 rows=12 width=164) (actual 
time=191.201..216.589 rows=115894 loops=1)
                                                                                                   Sort Key: cb21_9.acb200
                                                                                                   Sort Method: quicksort  Memory: 19370kB
                                                                                                   ->  CTE Scan on cb21 cb21_9  (cost=0.00..3188.82 rows=
12 width=164) (actual time=0.018..91.818 rows=115894 loops=1)
                                                                                                         Filter: (((ace751)::text = '1'::text) AND ((dsta
tus)::text = ANY ('{0,1,-1,-3}'::text[])))
                                                                                                         Rows Removed by Filter: 29
                                                                     ->  Hash  (cost=3189.36..3189.36 rows=12 width=90) (actual time=74.647..74.648 rows=
3 loops=1)
                                                                           Buckets: 1024  Batches: 1  Memory Usage: 9kB
                                                                           ->  Subquery Scan on cb21_4  (cost=3189.03..3189.36 rows=12 width=90) (actual 
time=74.633..74.637 rows=3 loops=1)
                                                                                 ->  GroupAggregate  (cost=3189.03..3189.24 rows=12 width=90) (actual tim
e=74.632..74.635 rows=3 loops=1)
                                                                                       Group Key: cb21_10.acb200
                                                                                       ->  Sort  (cost=3189.03..3189.06 rows=12 width=164) (actual time=7
4.616..74.617 rows=3 loops=1)
                                                                                             Sort Key: cb21_10.acb200
                                                                                             Sort Method: quicksort  Memory: 25kB
                                                                                             ->  CTE Scan on cb21 cb21_10  (cost=0.00..3188.82 rows=12 wi
dth=164) (actual time=0.018..74.601 rows=3 loops=1)
                                                                                                   Filter: (((ace751)::text = '2'::text) AND ((dstatus)::
text = ANY ('{0,1,-1,-3}'::text[])))
                                                                                                   Rows Removed by Filter: 115920
                                                               ->  Hash  (cost=3188.86..3188.86 rows=1 width=90) (actual time=243.321..243.324 rows=12889
 loops=1)
                                                                     Buckets: 16384 (originally 1024)  Batches: 1 (originally 1)  Memory Usage: 1047kB
                                                                     ->  Subquery Scan on cb21_5  (cost=3188.83..3188.86 rows=1 width=90) (actual time=18
4.872..239.625 rows=12889 loops=1)
                                                                           ->  GroupAggregate  (cost=3188.83..3188.85 rows=1 width=90) (actual time=184.8
70..238.239 rows=12889 loops=1)
                                                                                 Group Key: cb21_11.acb200
                                                                                 ->  Sort  (cost=3188.83..3188.83 rows=1 width=164) (actual time=184.849.
.210.431 rows=115867 loops=1)
                                                                                       Sort Key: cb21_11.acb200
                                                                                       Sort Method: quicksort  Memory: 19366kB
                                                                                       ->  CTE Scan on cb21 cb21_11  (cost=0.00..3188.82 rows=1 width=164
) (actual time=0.017..88.159 rows=115867 loops=1)
                                                                                             Filter: (((dstatus)::text = '1'::text) AND ((ace751)::text =
 '1'::text) AND ((ace752)::text = '1'::text))
                                                                                             Rows Removed by Filter: 56
                                                         ->  Hash  (cost=3188.86..3188.86 rows=1 width=90) (actual time=220.924..220.926 rows=12889 loops
=1)
                                                               Buckets: 16384 (originally 1024)  Batches: 1 (originally 1)  Memory Usage: 1047kB
                                                               ->  Subquery Scan on cb21_6  (cost=3188.83..3188.86 rows=1 width=90) (actual time=167.064.
.217.446 rows=12889 loops=1)
                                                                     ->  GroupAggregate  (cost=3188.83..3188.85 rows=1 width=90) (actual time=167.062..21
6.045 rows=12889 loops=1)
                                                                           Group Key: cb21_12.acb200
                                                                           ->  Sort  (cost=3188.83..3188.83 rows=1 width=90) (actual time=167.038..188.38
9 rows=115867 loops=1)
                                                                                 Sort Key: cb21_12.acb200
                                                                                 Sort Method: quicksort  Memory: 12125kB
                                                                                 ->  CTE Scan on cb21 cb21_12  (cost=0.00..3188.82 rows=1 width=90) (actu
al time=0.017..87.220 rows=115867 loops=1)
                                                                                       Filter: (((dstatus)::text = '1'::text) AND ((ace751)::text = '1'::
text) AND ((ace752)::text = '1'::text))
                                                                                       Rows Removed by Filter: 56
                                                   ->  Hash  (cost=3189.36..3189.36 rows=12 width=90) (actual time=73.962..73.964 rows=17 loops=1)
                                                         Buckets: 1024  Batches: 1  Memory Usage: 10kB
                                                         ->  Subquery Scan on cb21_7  (cost=3189.03..3189.36 rows=12 width=90) (actual time=73.929..73.94
7 rows=17 loops=1)
                                                               ->  GroupAggregate  (cost=3189.03..3189.24 rows=12 width=90) (actual time=73.928..73.943 r
ows=17 loops=1)
                                                                     Group Key: cb21_13.acb200
                                                                     ->  Sort  (cost=3189.03..3189.06 rows=12 width=164) (actual time=73.914..73.917 rows
=35 loops=1)
                                                                           Sort Key: cb21_13.acb200
                                                                           Sort Method: quicksort  Memory: 29kB
                                                                           ->  CTE Scan on cb21 cb21_13  (cost=0.00..3188.82 rows=12 width=164) (actual t
ime=0.023..73.826 rows=35 loops=1)
                                                                                 Filter: (((ace752)::text = '0'::text) AND ((dstatus)::text = ANY ('{0,1,
-1,-3}'::text[])))
                                                                                 Rows Removed by Filter: 115888
                                             ->  Hash  (cost=25.17..25.17 rows=15 width=90) (actual time=2.768..2.770 rows=1021 loops=1)
                                                   Buckets: 1024  Batches: 1  Memory Usage: 81kB
                                                   ->  Subquery Scan on cc2b_1  (cost=24.88..25.17 rows=15 width=90) (actual time=2.178..2.463 rows=1021 
loops=1)
                                                         ->  HashAggregate  (cost=24.88..25.02 rows=15 width=90) (actual time=2.177..2.364 rows=1021 loop
s=1)
                                                               Group Key: cc2b.acb200
                                                               ->  CTE Scan on cc2b  (cost=0.00..24.80 rows=16 width=82) (actual time=0.042..1.796 rows=1
044 loops=1)
                                                                     Filter: ((acc2bz)::text = ANY ('{1,2,3}'::text[]))
                                       ->  Hash  (cost=23.93..23.93 rows=10 width=90) (actual time=1.920..1.922 rows=1021 loops=1)
                                             Buckets: 1024  Batches: 1  Memory Usage: 81kB
                                             ->  Subquery Scan on cc2b_2  (cost=23.66..23.93 rows=10 width=90) (actual time=0.950..1.563 rows=1021 loops=
1)
                                                   ->  GroupAggregate  (cost=23.66..23.83 rows=10 width=90) (actual time=0.949..1.455 rows=1021 loops=1)
                                                         Group Key: cc2b_3.acb200
                                                         ->  Sort  (cost=23.66..23.68 rows=10 width=82) (actual time=0.944..1.009 rows=1039 loops=1)
                                                               Sort Key: cc2b_3.acb200
                                                               Sort Method: quicksort  Memory: 130kB
                                                               ->  CTE Scan on cc2b cc2b_3  (cost=0.00..23.49 rows=10 width=82) (actual time=0.003..0.426
 rows=1039 loops=1)
                                                                     Filter: ((acc2bz)::text = ANY ('{1,2}'::text[]))
                                                                     Rows Removed by Filter: 5
                                 ->  Hash  (cost=31.30..31.30 rows=200 width=90) (actual time=2.135..2.136 rows=1008 loops=1)
                                       Buckets: 1024  Batches: 1  Memory Usage: 80kB
                                       ->  Subquery Scan on cb2b_1  (cost=27.30..31.30 rows=200 width=90) (actual time=1.616..1.904 rows=1008 loops=1)
                                             ->  HashAggregate  (cost=27.30..29.30 rows=200 width=90) (actual time=1.616..1.806 rows=1008 loops=1)
                                                   Group Key: cb2b.acb200
                                                   ->  CTE Scan on cb2b  (cost=0.00..21.84 rows=1092 width=82) (actual time=0.016..1.127 rows=1050 loops=
1)
                           ->  Hash  (cost=24.77..24.77 rows=5 width=90) (actual time=0.551..0.553 rows=3 loops=1)
                                 Buckets: 1024  Batches: 1  Memory Usage: 9kB
                                 ->  Subquery Scan on cb2b_2  (cost=24.63..24.77 rows=5 width=90) (actual time=0.545..0.549 rows=3 loops=1)
                                       ->  GroupAggregate  (cost=24.63..24.72 rows=5 width=90) (actual time=0.544..0.547 rows=3 loops=1)
                                             Group Key: cb2b_3.acb200
                                             ->  Sort  (cost=24.63..24.64 rows=5 width=82) (actual time=0.540..0.540 rows=7 loops=1)
                                                   Sort Key: cb2b_3.acb200
                                                   Sort Method: quicksort  Memory: 25kB
                                                   ->  CTE Scan on cb2b cb2b_3  (cost=0.00..24.57 rows=5 width=82) (actual time=0.518..0.527 rows=7 loops
=1)
                                                         Filter: ((acb2b2)::text = '2'::text)
                                                         Rows Removed by Filter: 1043
                     ->  Hash  (cost=128.04..128.04 rows=1 width=41) (actual time=0.201..0.203 rows=4 loops=1)
                           Buckets: 1024  Batches: 1  Memory Usage: 9kB
                           ->  GroupAggregate  (cost=128.01..128.03 rows=1 width=41) (actual time=0.194..0.200 rows=4 loops=1)
                                 Group Key: a.acb200
                                 ->  Sort  (cost=128.01..128.01 rows=1 width=33) (actual time=0.189..0.191 rows=17 loops=1)
                                       Sort Key: a.acb200
                                       Sort Method: quicksort  Memory: 26kB
                                       ->  Nested Loop Left Join  (cost=0.28..128.00 rows=1 width=33) (actual time=0.036..0.178 rows=17 loops=1)
                                             Filter: (b.acb2c0 IS NULL)
                                             Rows Removed by Filter: 15
                                             ->  Seq Scan on cc22 a  (cost=0.00..11.16 rows=16 width=66) (actual time=0.014..0.040 rows=32 loops=1)
                                             ->  Index Scan using idx_cb2c_acc220_e95e0740_45eb90e2 on cb2c b  (cost=0.28..7.29 rows=1 width=66) (actual 
time=0.004..0.004 rows=0 loops=32)
                                                   Index Cond: ((acc220)::text = (a.acc220)::text)
               ->  Hash  (cost=23.69..23.69 rows=5 width=90) (actual time=2.609..2.611 rows=1008 loops=1)
                     Buckets: 1024  Batches: 1  Memory Usage: 80kB
                     ->  Subquery Scan on cb2g_1  (cost=23.55..23.69 rows=5 width=90) (actual time=1.658..2.281 rows=1008 loops=1)
                           ->  GroupAggregate  (cost=23.55..23.64 rows=5 width=90) (actual time=1.657..2.175 rows=1008 loops=1)
                                 Group Key: cb2g.aab001
                                 ->  Sort  (cost=23.55..23.56 rows=5 width=82) (actual time=1.653..1.721 rows=1107 loops=1)
                                       Sort Key: cb2g.aab001
                                       Sort Method: quicksort  Memory: 135kB
                                       ->  CTE Scan on cb2g  (cost=0.00..23.49 rows=5 width=82) (actual time=0.015..1.147 rows=1107 loops=1)
                                             Filter: ((acb2g9)::text = '1'::text)
         ->  Hash  (cost=23.69..23.69 rows=5 width=90) (actual time=1.756..1.757 rows=1004 loops=1)
               Buckets: 1024  Batches: 1  Memory Usage: 80kB
               ->  Subquery Scan on cb2g_2  (cost=23.55..23.69 rows=5 width=90) (actual time=0.829..1.428 rows=1004 loops=1)
                     ->  GroupAggregate  (cost=23.55..23.64 rows=5 width=90) (actual time=0.828..1.322 rows=1004 loops=1)
                           Group Key: cb2g_4.aab001
                           ->  Sort  (cost=23.55..23.56 rows=5 width=82) (actual time=0.825..0.884 rows=1016 loops=1)
                                 Sort Key: cb2g_4.aab001
                                 Sort Method: quicksort  Memory: 104kB
                                 ->  CTE Scan on cb2g cb2g_4  (cost=0.00..23.49 rows=5 width=82) (actual time=0.008..0.322 rows=1016 loops=1)
                                       Filter: ((acb2ga)::text = '1'::text)
                                       Rows Removed by Filter: 91
   ->  Hash  (cost=23.69..23.69 rows=5 width=90) (actual time=1.666..1.668 rows=1005 loops=1)
         Buckets: 1024  Batches: 1  Memory Usage: 80kB
         ->  Subquery Scan on cb2g_3  (cost=23.55..23.69 rows=5 width=90) (actual time=0.808..1.416 rows=1005 loops=1)
               ->  GroupAggregate  (cost=23.55..23.64 rows=5 width=90) (actual time=0.807..1.308 rows=1005 loops=1)
                     Group Key: cb2g_5.aab001
                     ->  Sort  (cost=23.55..23.56 rows=5 width=82) (actual time=0.804..0.869 rows=1015 loops=1)
                           Sort Key: cb2g_5.aab001
                           Sort Method: quicksort  Memory: 104kB
                           ->  CTE Scan on cb2g cb2g_5  (cost=0.00..23.49 rows=5 width=82) (actual time=0.008..0.319 rows=1015 loops=1)
                                 Filter: ((acb2gb)::text = '1'::text)
                                 Rows Removed by Filter: 92
 Planning Time: 9.770 ms
 Execution Time: 2232.544 ms
(237 行记录)

时间:2254.037 ms (00:02.254)
时间:0.161 ms

 

标签:rows,..,text,cb21,t1,改写,acb200,体力活,量子
From: https://www.cnblogs.com/yuzhijian/p/18071632

相关文章

  • pg distinct 改写递归优化(德哥的思路)
    德哥的优化思路巨牛逼,这种递归思维真的太吊了,我目前就缺递归思路。 下面SQL1000W行数据,列的选择性很低,只有两个值('1'和'11')都是字符串类型,'1'只有一条数据,'11'有9999999行数据。慢SQL:selectdistinctcolfromtt;......
  • MYSQL学习笔记25: 多表查询(子查询)[标量子查询,列子查询]
    多表查询(子查询)子查询,也称嵌套查询子查询的语句可以是insert/update/delete/select中的任何一个根据子查询的结果不同,可以分为:标量子查询(结果为单个值)列子查询(结果为一列)行子查询(子查询结果为一行)表子查询(子查询结果为多行多列)select*fromt1wh......
  • 量子力学1-量子力学的诞生与发展
    by东北育才学校S361qjc07141900年4月27日,在题为《覆盖热量和光线的动力学理论的十九世纪的乌云》的演讲中,开尔文说道:“动力学理论断言热和光都是运动的方式,现在这种理论的优美性和清晰性被两朵乌云遮蔽得黯然失色了”.对于第一朵乌云,导致了相对论的产生.人们知道,水波的传播......
  • 量子力学2-量子力学的应用与实现
    by东北育才学校S361qjc0714我们熟知,人类历史上有几次重要的工业革命,推进了人们科技的发展:工业1.0是蒸汽机时代,工业2.0是电气化时代,工业3.0是信息化时代,而工业4.0则是利用信息化技术促进产业变革的时代,也就是智能化时代.量子力学的诞生为人类未来的工业4.0打下了基础.1980年......
  • 量子力学基础——波函数
    波函数什么是波函数?波函数是关于位移x和时间t的函数,简写为\[\Psi(x,t)\]波函数本身代表在空间中的一个分布,也表达了粒子具有的所有信息,单独的波函数表达式所具有的意义较少,但是,由玻恩关于波函数的统计诠释指出,对波函数绝对值的平方积分的结果代表了在t时刻,位于x处发现这个粒......
  • 问题:主量子数n为3时,只有3s、3p和3d三个轨道
    问题:主量子数n为3时,只有3s、3p和3d三个轨道参考答案如图所示......
  • 量子优势:计算机的未来
    量子优势:计算机的未来发布日期:2023-11-30    浏览次数:2 量子计算具有里程碑式的优势量子计算具有里程碑式的优势。量子计算机可以解决最强大的非量子或经典计算机无法解决的问题。量子计算机利用它的奇异的性能来解决问题。量子指的是原子和分子或更小粒......
  • 数仓调优实践丨SQL改写消除相关子查询
    本文分享自华为云社区《【调优实践】SQL改写消除相关子查询》,作者:门前一棵葡萄树。一、子查询GaussDB(DWS)根据子查询在SQL语句中的位置把子查询分成了子查询、子链接两种形式。子查询SubQuery:对应于查询解析树中的范围表RangeTblEntry,更通俗一些指的是出现在FROM语句后面的......
  • 分享一个外网的关于量子计算的学术观点:通用量子计算永远不能够被实现
    外网原文地址:https://spectrum.ieee.org/the-case-against-quantum-computing外网原文内容(中文版,由ChatGPT3.5翻译):量子计算风头正劲。似乎每天都有新闻媒体描述这项技术所承诺的非凡事物。大多数评论员忽略了,或者只是草率地跳过了这样一个事实,即人们已经在量子计算上工作了几......
  • 人工智能与量子计算知识学习
     人工智能与量子计算的结合是科技领域的一场创新盛宴,引领我们进入了探索未知领域的新时代。本文将深入研究人工智能与量子计算的交汇点,探讨其原理、应用以及对计算领域的深远影响。    量子计算的崛起为人工智能领域注入了新的活力,开启了一场变革性的探索之旅。本文将深......