WITH Table_01 (seq, id, x, y, timezn_cd , m00, m10, m15, m20, m25, m30, m35, m40, m45, m50, m55, m60, m65, m70 , f00, f10, f15, f20, f25, f30, f35, f40, f45, f50, f55, f60, f65, f70 , total, admi_cd, etl_ymd ) AS ( SELECT 1, 85292512, 452052, 362693, 0, 0, 0, 0, 2, 3, 3, 3, 3, 4, 2, 4, 6, 3, 1, 0, 0, 1, 2, 3, 2, 2, 1, 3, 3, 1, 1, 1, 1, 55, 27110517, '20211230' UNION ALL SELECT 2, 85292512, 452052, 362693, 0, 0, 0, 0, 2, 3, 4, 3, 4, 5, 3, 4, 3, 2, 2, 0, 0, 1, 2, 2, 1, 1, 2, 3, 2, 1, 1, 1, 1, 53, 27110565, '20211209' UNION ALL SELECT 3, 85292512, 452052, 362693, 0, 0, 0, 0, 2, 7, 3, 4, 2, 2, 2, 4, 2, 1, 1, 0, 0, 0, 2, 2, 1, 1, 1, 2, 1, 1, 1, 1, 0, 43, 27110640, '20211214' UNION ALL SELECT 4, 85292512, 452052, 362693, 0, 0, 0, 0, 3, 7, 5, 11, 5, 7, 6, 6, 7, 2, 1, 0, 0, 1, 5, 2, 2, 4, 2, 6, 2, 2, 1, 2, 1, 90, 27110670, '20211227' UNION ALL SELECT 5, 85292512, 452052, 362693, 0, 0, 0, 1, 2, 6, 3, 6, 3, 3, 5, 4, 4, 2, 1, 0, 0, 1, 2, 3, 2, 1, 2, 3, 2, 2, 1, 1, 1, 61, 27110680, '20211218' UNION ALL SELECT 6, 85292512, 452052, 362693, 0, 0, 0, 1, 3, 7, 6, 8, 8, 9, 5, 6, 7, 4, 1, 0, 0, 1, 3, 4, 3, 5, 4, 4, 3, 2, 0, 1, 1, 96, 27140510, '20211205' UNION ALL SELECT 7, 85292512, 452052, 362693, 0, 0, 1, 4, 12, 15, 13, 10, 10, 8, 8, 10, 9, 5, 3, 0, 1, 4, 8, 8, 4, 7, 5, 7, 6, 5, 4, 1, 2, 170, 27140540, '20211201' UNION ALL SELECT 8, 85292512, 452052, 362693, 1, 0, 0, 0, 1, 3, 2, 2, 3, 2, 2, 2, 2, 2, 1, 0, 0, 0, 1, 0, 1, 1, 2, 1, 1, 1, 1, 1, 1, 33, 27140570, '20211215' UNION ALL SELECT 9, 85292512, 452052, 362693, 1, 0, 0, 0, 2, 2, 1, 2, 1, 2, 2, 1, 3, 0, 1, 0, 0, 1, 2, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 28, 27140600, '20211228' UNION ALL SELECT 10, 85292512, 452052, 362693, 1, 0, 0, 0, 2, 3, 2, 2, 3, 1, 1, 3, 2, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 29, 27140615, '20211202' ) , Table_02 (seq, id, emd_cd) AS ( SELECT 1, 85292512, 3020010100 UNION ALL SELECT 2, 85292513, 3020010200 UNION ALL SELECT 3, 85292514, 3020010300 UNION ALL SELECT 4, 85292515, 3020010400 UNION ALL SELECT 5, 85292516, 3020010500 UNION ALL SELECT 6, 85292517, 3020010600 UNION ALL SELECT 7, 85292518, 3020010700 UNION ALL SELECT 8, 85292519, 3020010800 UNION ALL SELECT 9, 85292520, 3020010900 UNION ALL SELECT 10, 85292521, 3020011000 ) , Table_03 (seq, emd_cd, emd_nm) AS ( SELECT 1, 3020010100, '원내동' UNION ALL SELECT 2, 3020011000, '방동' UNION ALL SELECT 3, 3020014700, '송강동' UNION ALL SELECT 4, 3020011200, '구암동' UNION ALL SELECT 5, 3020011700, '장대동' UNION ALL SELECT 6, 3020011900, '노은동' UNION ALL SELECT 7, 3020012000, '지족동' UNION ALL SELECT 8, 3020014300, '탑립동' UNION ALL SELECT 9, 3020012300, '어은동' UNION ALL SELECT 10, 3020012500, '신성동' ) -- MySQL(MariaDB) 에서 test -- SELECT SUBSTR(a.etl_ymd, 1, 6) etl_ym , c.emd_nm , a.timezn_cd , CASE WHEN DATE_FORMAT(a.etl_ymd, '%w') IN (6, 0) THEN '휴일' ELSE '평일' END x , ROUND(AVG(m10 + m15 + m00)) 남성_10대이하 , ROUND(AVG(m20 + m25 )) 남성_20대 , ROUND(AVG(m30 + m35 )) 남성_30대 , ROUND(AVG(m40 + m45 )) 남성_40대 , ROUND(AVG(m50 + m55 )) 남성_50대 , ROUND(AVG(m60 + m65 + m70)) 남성_60대이상 , ROUND(AVG(f10 + f15 + f00)) 여성_10대이하 , ROUND(AVG(f20 + f25 )) 여성_20대 , ROUND(AVG(f30 + f35 )) 여성_30대 , ROUND(AVG(f40 + f45 )) 여성_40대 , ROUND(AVG(f50 + f55 )) 여성_50대 , ROUND(AVG(f00 + f65 + f70)) 여성_60대이상 , ROUND(AVG(m00+m10+m15+m20+m25+m30+m35+m40+m45+m50+m55+m60+m65+m70)) 남성 , ROUND(AVG(f00+f10+f15+f20+f25+f30+f35+f40+f45+f50+f55+f60+f65+f70)) 여성 , ROUND(AVG(total)) 전체 FROM Table_01 a INNER JOIN Table_02 b ON a.id = b.id INNER JOIN Table_03 c ON b.emd_cd = c.emd_cd WHERE a.etl_ymd BETWEEN '20211201' AND '20211231' GROUP BY SUBSTR(a.etl_ymd, 1, 6) , c.emd_nm , a.timezn_cd , CASE WHEN DATE_FORMAT(a.etl_ymd, '%w') IN (6, 0) THEN '휴일' ELSE '평일' END ;