Search

6-3-2. GROUP BY 컬럼 최소화

-- [SQL-6-3-2-a] EXPLAIN (ANALYZE,BUFFERS,COSTS OFF) SELECT t1.mbr_id ,t1.shop_id ,MAX(t2.nick_nm) nick_nm ,MAX(t2.join_dtm) join_dtm ,MAX(t2.join_tp) join_tp ,MAX(t3.shop_nm) shop_nm ,MAX(t3.chair_qty) chair_qty ,MAX(t3.shop_oper_tp) shop_oper_tp ,SUM(t1.ord_amt) ord_amt_sum FROM startdbpg.tr_ord_big t1 INNER JOIN startdbpg.ms_mbr_big t2 ON (t2.mbr_id = t1.mbr_id) INNER JOIN startdbpg.ms_shop_big t3 ON (t3.shop_id = t1.shop_id) WHERE t1.ord_dtm >= '2024-01-01'::date AND t1.ord_dtm < '2024-02-01'::date GROUP BY t1.mbr_id ,t1.shop_id;
SQL
복사
-- [SQL-6-3-2-b] EXPLAIN (ANALYZE,BUFFERS,COSTS OFF) SELECT t1.mbr_id ,t1.shop_id ,t2.nick_nm ,t2.join_dtm ,t2.join_tp ,t3.shop_nm ,t3.chair_qty ,t3.shop_oper_tp ,SUM(t1.ord_amt) ord_amt_sum FROM startdbpg.tr_ord_big t1 INNER JOIN startdbpg.ms_mbr_big t2 ON (t2.mbr_id = t1.mbr_id) INNER JOIN startdbpg.ms_shop_big t3 ON (t3.shop_id = t1.shop_id) WHERE t1.ord_dtm >= '2024-01-01'::date AND t1.ord_dtm < '2024-02-01'::date GROUP BY t1.mbr_id ,t1.shop_id ,t2.nick_nm ,t2.join_dtm ,t2.join_tp ,t3.shop_nm ,t3.chair_qty ,t3.shop_oper_tp;
SQL
복사