[selectRecords] select kbn ,cd ,han ,tok_cd ,tok_rnm ,coalesce(uri01,0) as uri01 ,coalesce(uri02,0) as uri02 ,coalesce(uri03,0) as uri03 ,coalesce(uri04,0) as uri04 ,coalesce(uri05,0) as uri05 ,coalesce(uri06,0) as uri06 ,coalesce(uri07,0) as uri07 ,coalesce(uri08,0) as uri08 ,coalesce(uri09,0) as uri09 ,coalesce(uri10,0) as uri10 ,coalesce(uri11,0) as uri11 ,coalesce(uri12,0) as uri12 ,coalesce(uri_kei,0) as uri_kei ,coalesce(uri_kei_ly,0) as uri_kei_ly ,coalesce(uri_taihi,0) as uri_taihi from( select 1 as kbn ,coalesce(mtk.cat_cd,'') as cd ,(case when coalesce(mtk.cat_cd,'')= '' then '' else coalesce(hn.han_name,'')||'('||coalesce(mtk.cat_cd,'')||')' end) as han ,coalesce(ttg.tok_cd,'') as tok_cd ,(case(coalesce(mtk.tok_rnm,'')) when ('') then (mtk.tok_nm) else (mtk.tok_rnm) end) as tok_rnm , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM'), 'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri01 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('1 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri02 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('2 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri03 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('3 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri04 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('4 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri05 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('5 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri06 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('6 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri07 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('7 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri08 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('8 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri09 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('9 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri10 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('10 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri11 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('11 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri12 , sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM'),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end) as uri_kei , sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') - CAST('1 year' AS INTERVAL),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL) - CAST('1 year' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end) as uri_kei_ly , ((sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM'),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end) / nullif(sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') - CAST('1 year' AS INTERVAL),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL) - CAST('1 year' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end),0) * 100) - 100 ) as uri_taihi from t_tok_getsu ttg left join m_tokui mtk on (mtk.tok_cd = ttg.tok_cd) left join m_hanyo hn on (hn.mst_kbn = '35' and hn.han_cd = mtk.cat_cd) where 1 = 1 and ttg.del_flg = 0 and (('' = '&4') or (mtk.cat_cd = '&4')) and (('' = '&20') or (mtk.tok_cd >= '&20')) and (('' = '&20') or (mtk.tok_cd <= '&21')) and ttg.syori_ym >= TO_CHAR(TO_DATE('&18'||'&19'||'01', 'YYYYMMDD') - CAST('2 year' AS INTERVAL), 'YYYYMMDD') and ttg.syori_ym < (TO_CHAR(2018 + 1,'FM9999')||'&19'||'00') group by mtk.cat_cd,hn.han_name,ttg.tok_cd,mtk.tok_rnm,mtk.tok_nm union all select 2 as kbn ,coalesce(mtk.cat_cd,'') as cd ,(case when coalesce(mtk.cat_cd,'') = '' then '' else coalesce(hn.han_name,'')||'('||coalesce(mtk.cat_cd,'')||')' end) as han ,'' as tok_cd ,'得意先分類合計' as tok_rnm , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM'), 'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri01 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('1 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri02 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('2 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri03 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('3 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri04 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('4 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri05 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('5 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri06 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('6 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri07 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('7 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri08 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('8 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri09 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('9 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri10 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('10 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri11 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('11 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri12 , sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM'),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end) as uri_kei , sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') - CAST('1 year' AS INTERVAL),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL) - CAST('1 year' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end) as uri_kei_ly , ((sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM'),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end) / nullif(sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') - CAST('1 year' AS INTERVAL),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL) - CAST('1 year' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end),0) * 100) - 100 ) as uri_taihi from t_tok_getsu ttg left join m_tokui mtk on (mtk.tok_cd = ttg.tok_cd) left join m_hanyo hn on (hn.mst_kbn = '35' and hn.han_cd = mtk.cat_cd) where 1 = 1 and ttg.del_flg = 0 and (('' = '&4') or (mtk.cat_cd = '&4')) and (('' = '&20') or (mtk.tok_cd >= '&20')) and (('' = '&20') or (mtk.tok_cd <= '&21')) and ttg.syori_ym >= TO_CHAR(TO_DATE('&18'||'&19'||'01', 'YYYYMMDD') - CAST('2 year' AS INTERVAL), 'YYYYMMDD') and ttg.syori_ym < (TO_CHAR(2018 + 1,'FM9999')||'&19'||'00') group by coalesce(mtk.cat_cd,''),hn.han_name union all select 3 as kbn ,null as cd ,'' as han ,'' as tok_cd ,'総合計' as tok_rnm , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM'), 'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri01 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('1 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri02 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('2 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri03 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('3 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri04 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('4 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri05 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('5 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri06 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('6 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri07 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('7 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri08 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('8 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri09 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('9 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri10 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('10 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri11 , sum(case(ttg.syori_ym)when TO_CHAR(TO_DATE('&18'||'&19', 'YYYYMM') + CAST('11 months' AS INTERVAL),'YYYYMM')then(ttg.zeinuki_gaku)else(null)end) as uri12 , sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM'),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end) as uri_kei , sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') - CAST('1 year' AS INTERVAL),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL) - CAST('1 year' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end) as uri_kei_ly , ((sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM'),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end) / nullif(sum(case when (substr(ttg.syori_ym,1,6) between TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') - CAST('1 year' AS INTERVAL),'YYYYMM') and TO_CHAR(TO_DATE('&18'||'&19','YYYYMM') + CAST('11 month' AS INTERVAL) - CAST('1 year' AS INTERVAL),'YYYYMM'))then (ttg.zeinuki_gaku) else (null) end),0) * 100) - 100 ) as uri_taihi from t_tok_getsu ttg left join m_tokui mtk on (mtk.tok_cd = ttg.tok_cd) left join m_hanyo hn on (hn.mst_kbn = '35' and hn.han_cd = mtk.cat_cd) where 1 = 1 and ttg.del_flg = 0 and (('' = '&4') or (mtk.cat_cd = '&4')) and (('' = '&20') or (mtk.tok_cd >= '&20')) and (('' = '&20') or (mtk.tok_cd <= '&21')) and ttg.syori_ym >= TO_CHAR(TO_DATE('&18'||'&19'||'01', 'YYYYMMDD') - CAST('2 year' AS INTERVAL), 'YYYYMMDD') and ttg.syori_ym < (TO_CHAR(2018 + 1,'FM9999')||'&19'||'00') ) s1 order by s1.cd,s1.kbn,s1.tok_cd;