标签:
create OR replace view region_ar_balance_2016 as select dsr1.level0_sales_region_code "营销中心代码" ,dsr1.level0_sales_region_name "营销中心名称" ,dsr1.level2_sales_region_code "大区代码" ,dsr1.level2_sales_region_name"大区名称" ,dsr1.level3_sales_region_code "区域代码" ,dsr1.level3_sales_region_name "区域名称" ,round(sum(bal_amount_20141216)) "2014.12.16应收期初额" ,round(sum(sales_amount_2015)) "2015年送货额" ,round(sum(received_payment_2015)) "2015年回款额(1.1-12.31)" ,round(0) as "回款额(20160207)" ,round(sum(received_payment_2015)/decode((sum(bal_amount_20141216)+sum(sales_amount_2015)),0,-1,(sum(bal_amount_20141216)+sum(sales_amount_2015))),4)*100 || ‘%‘ "回款率1" ,round(0) as "回款率2" ,round(0) as "昨日应收余额" from BI_APD.APD_TB160111164221@BIDBPRD t ,bi_pdm.dim_sales_region@bidbprd dsr ,bi_pdm.dim_sales_region@bidbprd dsr1 WHERE dsr.level3_sales_region_name = t.region_name and dsr.level3_sales_region_name = dsr1.sales_region_name AND dsr1.sales_region_type = ‘KL_OM_QY‘ group by dsr1.level0_sales_region_name ,dsr1.level0_sales_region_code3 ,dsr1.level2_sales_region_name ,dsr1.level2_sales_region_code ,dsr1.level3_sales_region_name ,dsr1.level3_sales_region_code union all SELECT dsr1.level0_sales_region_code "营销中心代码" ,dsr1.level0_sales_region_name "营销中心名称" ,dsr1.level2_sales_region_code "大区代码" ,dsr1.level2_sales_region_name"大区名称" ,dsr1.level3_sales_region_code "区域代码" ,dsr1.level3_sales_region_name "区域名称" ,round(0) as "2014.12.16应收期初额" ,round(0) as "2015年送货额" ,round(0) as "2015年回款额(1.1-12.31)" ,round(sum(amount_cny)/10000,2) "回款额(20160207)" ,round(0)|| ‘‘ as "回款率1" ,round(0) as "回款率2" ,round(0) as "昨日应收余额" FROM bi_gdm.adt_ar_cash_receipts_f@bidbprd t ,bi_pdm.dim_sales_region@bidbprd dsr ,bi_pdm.dim_sales_region@bidbprd dsr1 WHERE dsr.level3_sales_region_name = t.region_name and dsr.level3_sales_region_name = dsr1.sales_region_name AND dsr1.sales_region_type = ‘KL_OM_QY‘ AND day_wid >= ‘20160101‘ AND day_wid < to_char(sysdate, ‘yyyymmdd‘) AND day_wid <= ‘20160207‘ group by dsr1.level0_sales_region_name ,dsr1.level0_sales_region_code ,dsr1.level2_sales_region_name ,dsr1.level2_sales_region_code ,dsr1.level3_sales_region_name ,dsr1.level3_sales_region_code union all SELECT dsr1.level0_sales_region_code "营销中心代码" ,dsr1.level0_sales_region_name "营销中心名称" ,dsr1.level2_sales_region_code "大区代码" ,dsr1.level2_sales_region_name "大区名称" ,dsr1.level3_sales_region_code "区域代码" ,dsr1.level3_sales_region_name "区域名称" ,round(0) as "2014.12.16应收期初额" ,round(0) as "2015年回款额(1.1-12.31)" ,round(0) as "2015年送货额" ,round(0) as "回款额(20160207)" ,round(0)|| ‘‘ as "回款率1" ,round(0) as "回款率2" ,round(sum(bal_amount)/10000,2) "昨日应收余额" FROM bi_pdm.rpt_ar_balance_a@bidbprd t ,bi_pdm.dim_sales_region@bidbprd dsr ,bi_pdm.dim_sales_region@bidbprd dsr1 where t.sales_region_wid = dsr.sales_region_wid and dsr.level3_sales_region_name = dsr1.sales_region_name and dsr1.sales_region_type = ‘KL_OM_QY‘ and month_wid = to_char(sysdate,‘yyyymm‘) group by dsr1.level0_sales_region_name ,dsr1.level0_sales_region_code ,dsr1.level2_sales_region_name ,dsr1.level2_sales_region_code ,dsr1.level3_sales_region_name ,dsr1.level3_sales_region_code;
注意点:1、字段名称和字段类型都必须一样; (特别是合并字符串)
2、表连接之间的条件,必须清晰;
做法:select字段和group by字段分别都必须一样;
标签:
原文地址:http://www.cnblogs.com/yexiaoxin992/p/5123217.html