zoukankan      html  css  js  c++  java
  • 产品统计报表的sql(oracle)

    select tb_total.*
      from (select pros.*, rownum RN
              from (select p.product_code,
                           p.product_name,
                           p.product_type_name,
                           nvl(rd.recommend_total, 0) recommend_total,
                           nvl(rd.open_suc_total, 0) open_suc_total,
                           to_char(nvl(rd.recommend_rat, 0), 'fm9999990.00') recommend_rat,
                           ration(nvl(rd.recommend_total, 0), g_recommend_total) recommend_zb,
                           nvl(rd.online_point, 0) online_point,
                           nvl(rd.vaild_point, 0) vaild_point,
                           ration(nvl(rd.online_point, 0), g_online_point) online_point_zb,
                           to_char(ration(nvl(rd.vaild_point, 0), g_vaild_point),
                                   'fm9999990.00') vaild_point_zb,
                           nvl(rd.valid_user, 0) valid_user,
                           to_char(ration(nvl(rd.valid_user, 0), g_valid_user),
                                   'fm9999990.00') valid_user_zb,
                           userinfo.user_count,
                           g_rd.g_valid_user,
                           g_rd.g_vaild_point
                      from (select rownum RN,
                                   p.product_code,
                                   p.product_name,
                                   pt.product_typeid,
                                   pt.product_type_name
                              from tb_product_type_relating re,
                                   tb_product_type          pt,
                                   tb_product_info          p
                             where re.typeid = pt.product_typeid(+)
                               and p.product_code = re.pid(+)) p,
                           (select d.product_code,
                                   sum(d.recommend_total) recommend_total,
                                   sum(d.open_suc_total) open_suc_total,
                                   ration(sum(d.open_suc_total),
                                          sum(d.recommend_total)) recommend_rat,
                                   count(distinct d.organise_id) online_point,
                                   count(distinct case
                                           when d.open_suc_total > 0 then
                                            d.organise_id
                                           else
                                            null
                                         end) vaild_point,
                                   count(distinct case
                                           when d.open_suc_total > 0 then
                                            d.emp_no
                                           else
                                            null
                                         end) valid_user
                              from stat_recomend_day d
                             where 1 = 1
                               and 1 = 1
                               and d.organise_code like 'SCAA%'
                             group by d.product_code) rd,
                           (select sum(recommend_total) g_recommend_total,
                                   sum(online_point) g_online_point,
                                   sum(vaild_point) g_vaild_point,
                                   sum(valid_user) g_valid_user
                              from (select d.product_code,
                                           sum(d.recommend_total) recommend_total,
                                           sum(d.open_suc_total) open_suc_total,
                                           count(distinct d.organise_id) online_point,
                                           count(distinct case
                                                   when d.open_suc_total > 0 then
                                                    d.organise_id
                                                   else
                                                    null
                                                 end) vaild_point,
                                           count(distinct case
                                                   when d.open_suc_total > 0 then
                                                    d.emp_no
                                                   else
                                                    null
                                                 end) valid_user
                                      from stat_recomend_day d
                                     where 1 = 1
                                       and 1 = 1
                                       and d.organise_code like 'SCAA%'
                                     group by d.product_code) g_rd,
                                   tb_product_info p
                             where p.product_code = g_rd.product_code(+)) g_rd,
                           (select count(t1.organise_code) user_count
                              from sys_organise_info t1, sys_user_info t2
                             where t1.organise_id = t2.organise_id
                               and t2.flag != '1'
                               and t1.organise_code like  'SCAA%') userinfo
                     where p.product_code = rd.product_code(+)
                     order by open_suc_total desc) pros) tb_total

  • 相关阅读:
    网络最大流算法—最高标号预流推进HLPP
    网络最大流算法—EK算法
    PROPAGATION_REQUIRED
    js左侧三级菜单导航代码
    Ubuntu上用premake编译GDAL
    2013数据结构课程设计之便利店选址(暴力枚举和随机函数两种做法)
    JAVA环境配置
    [K/3Cloud] 如何从被调用的动态表单界面返回数据
    document.getElementsByClassName在ie8及其以下浏览器的兼容性问题
    Java学习笔记51:数组转ArrayList和ArrayList转数组技巧
  • 原文地址:https://www.cnblogs.com/working/p/2918967.html
Copyright © 2011-2022 走看看