DB2学习
1.为了使用ORG_ID,由于OCRM_F_MM_MKT_PLAN a 没有ORG_ID,但是OCRM_F_MM_EXECUTE_INST_DESC d 表里面有,可以使a表连接b表,创建临时表t。
select t.PLAN_S AS MARKET_PLAN_COUNT,t.SUM_PLAN AS PLAN_ACC_COUNT
from (select count(a.MKT_PLAN_STAT) as PLAN_S,sum(case when a.MKT_PLAN_STAT='3' then 1 else 0 end) as SUM_PLAN from OCRM_F_MM_MKT_PLAN a left join OCRM_F_MM_EXECUTE_INST_DESC d on (d.PLAN_ID=a.PLAN_ID))t;
2.
select f.ORG_ID,f.ORG_NAME,t.MARKET_PLAN_COUNT,t.PLAN_ACC_PER,t.PLAN_ACC_COUNT,
b.MARKET_ACT_COUNT,b.ACT_ACC_COUNT,b.ACT_ACC_PER,c.OPPOR_COUNT,
c.OPPOR_ACC_COUNT,c.OPPOR_ACC_PER
from( select d.org_id,count(a.MKT_PLAN_STAT) as MARKET_PLAN_COUNT,
sum(case when a.MKT_PLAN_STAT='3' then 1 else 0 end) as PLAN_ACC_COUNT,
ROUND(CAST(sum(case when a.MKT_PLAN_STAT='3' then 1 else 0 end) AS DOUBLE) / count(a.MKT_PLAN_STAT)*100,4) as PLAN_ACC_PER
from OCRM_F_MM_MKT_PLAN a left join OCRM_F_MM_EXECUTE_INST_DESC d on (d.PLAN_ID=a.PLAN_ID) group by org_id)t
left join (select CREATE_ORG,count( MKT_ACTI_STAT) as MARKET_ACT_COUNT,sum(case when MKT_ACTI_STAT='4' then 1 else 0 end) AS ACT_ACC_COUNT,
ROUND( sum(case when MKT_ACTI_STAT='4' then 1 else 0 end)/count( MKT_ACTI_STAT)*100,4) as ACT_ACC_PER
from OCRM_F_MK_MKT_ACTIVITY group by CREATE_ORG) b on (t.ORG_ID=b.CREATE_ORG)
left join
(
select CREATE_ORG_ID, count(OPPOR_STAT) as OPPOR_COUNT, sum(case when OPPOR_STAT=7 then 1 else 0 end) + sum(case when OPPOR_STAT= 8 then 1 else 0 end) AS OPPOR_ACC_COUNT,
ROUND(CAST( ( sum(case when OPPOR_STAT=7 then 1 else 0 end) + sum(case when OPPOR_STAT= 8 then 1 else 0 end)) AS DOUBLE)/count(OPPOR_STAT) *100,4)as OPPOR_ACC_PER from OCRM_F_MM_MKT_BUSI_OPPOR group by CREATE_ORG_ID) c on (b.CREATE_ORG=c.CREATE_ORG_ID)
left join ADMIN_AUTH_ORG f on (c.CREATE_ORG_ID=f.ORG_ID)
3.统计状态为3,3代表成功的,把3看做1,然后累加1,最后得到表里面有多少个3
select count(a.MKT_PLAN_STAT) as MARKET_PLAN_COUNT, sum(case when a.MKT_PLAN_STAT='3' then 1 else 0 end) as PLAN_ACC_COUNT from OCRM_F_MM_MKT_PLAN a;
4.统计查找客户经理名称,编号,这个客户经理营销计划数量,完成数量,完成率以及营销活动数量,完成数量,完成率以及商机数量,完成数量,完成率,以及这个客户经理的所属机构,机构号。
select
f.CUST_MANAGER_ID,f.CUST_MANAGER_NAME,
t1.MARKET_PLAN_COUNT,t1.PLAN_ACC_COUNT,t1.PLAN_ACC_PER,
t2.MARKET_ACT_COUNT,t2.ACT_ACC_COUNT,t2.ACT_ACC_PER,
t3.OPPOR_COUNT,t3.OPPOR_ACC_COUNT,t3.OPPOR_ACC_PER,
g.ORG_ID,g.ORG_NAME
from (
SELECT
b.EXECUTOR,
COUNT(a.MKT_PLAN_STAT) AS MARKET_PLAN_COUNT,
SUM(
CASE
WHEN a.MKT_PLAN_STAT='3'
THEN 1
ELSE 0
END) AS PLAN_ACC_COUNT,
ROUND( CAST(SUM(
CASE
WHEN a.MKT_PLAN_STAT='3'
THEN 1
ELSE 0
END) AS DOUBLE) / COUNT(a.MKT_PLAN_STAT)*100,4) AS PLAN_ACC_PER
FROM
OCRM_F_MM_MKT_PLAN a
LEFT JOIN OCRM_F_MM_PLAN_CUST b
ON
(
b.PLAN_ID=a.PLAN_ID
)
GROUP BY
EXECUTOR ) t1
left join
( SELECT
d.HOST_MGR_ID,
COUNT( MKT_ACTI_STAT) AS MARKET_ACT_COUNT,
SUM(
CASE
WHEN MKT_ACTI_STAT='4'
THEN 1
ELSE 0
END) AS ACT_ACC_COUNT,
ROUND( SUM(
CASE
WHEN MKT_ACTI_STAT='4'
THEN 1
ELSE 0
END)/COUNT( MKT_ACTI_STAT)*100,4) AS ACT_ACC_PER
FROM
OCRM_F_MK_MKT_ACTIVITY c left join OCRM_F_MK_ACTI_CUSTOMER d on(c.MKT_ACTI_ID=d.MKT_ACTI_ID)
GROUP BY
d.HOST_MGR_ID) t2 on (t1.EXECUTOR=t2.HOST_MGR_ID)
left join
( SELECT
e.CREATER_ID,
COUNT(OPPOR_STAT) AS OPPOR_COUNT,
SUM(
CASE
WHEN OPPOR_STAT=7
THEN 1
ELSE 0
END) + SUM(
CASE
WHEN OPPOR_STAT= 8
THEN 1
ELSE 0
END) AS OPPOR_ACC_COUNT,
ROUND(CAST( ( SUM(
CASE
WHEN OPPOR_STAT=7
THEN 1
ELSE 0
END) + SUM(
CASE
WHEN OPPOR_STAT= 8
THEN 1
ELSE 0
END)) AS DOUBLE)/COUNT(OPPOR_STAT) *100,4)AS OPPOR_ACC_PER
FROM
OCRM_F_MM_MKT_BUSI_OPPOR e
GROUP BY
e.CREATER_ID) t3 on (t2.HOST_MGR_ID=t3.CREATER_ID)
left join
OCRM_F_CM_CUST_MGR_INFO f on (t3.CREATER_ID=f.CUST_MANAGER_ID)
left join ADMIN_AUTH_ORG g on (f.AFFI_INST_ID=g.ORG_ID)
DB2学习的更多相关文章
- db2学习笔记
a.服务端安装 v11.1_win64_expc.zip 官网下载 b.客户端安装 Toad for DB2 Freeware 6.1 百度找找 .建数据库 create database HRA_G ...
- DB2 学习--(1)--安装教程
db2 linux 安装部署 1 解压文件 tar -zxvf db2_v101_linuxx64_expc.tar.gz 2 切换路径 cd expc/ 3 启动安装程序 ./db2_install ...
- DB2学习总结(1)——DB2数据库基础入门
DB2的特性 完全Web使能的:可以利用HTTP来发送询问给服务器. 高度可缩放和可靠:高负荷时可利用多处理器和大内存,可以跨服务器地分布数据库和数据负荷:能够以最小的数据丢失快速地恢复,提供多种备份 ...
- DB2学习笔记备忘 2018.5.9
DB2安装的时候选择了和系统用户一致的选项,然后登陆的时候,连接的时候输入的就是计算机用户的用户名和密码. 1.3 DB2数据库体系结构 系统 一个系统表示DB2的一个安装.在一个由很多及其组成的网络 ...
- db2学习笔记--数据类型对表的影响
创建表的时为列选择合适的数据类型,可以提高数据库性能. 1.选择合适的数据类型,避免出现数据类型转换.例如日期,有人使用字符串来存放日期.时间戳,最后我们还要在程序中使用to_date做数据类型转换, ...
- DB2数据库常用命令数据库学习
DB2数据库常用命令数据库学习你可以用 get snapshot for locks on XXX 看是那个表锁了,再从相关的操作去查原因吧 db2pd -d 库名 -locks和db2pd -d 库 ...
- 学习笔记之DB2 9 Fundamentals 730
Sequence中cache的影响,每新建一个连接,next value值增加increment * cache.如果加上order,则会按顺序生成值. increment cache ; Conne ...
- DB2的基础指令 学习笔记
=======DB2基础指令======= 1.打开数据库db2 connect to 数据库名;2.查看数据库中有哪些表db2 list tables ;3.查看数据库中的表结构db2 descri ...
- DB2导入导出 学习笔记
db2pd -osinfodb2mtrk -i -d (for aix)db2 get dbm cfg show detaildb2 get db cfg show detaildb2 get sna ...
随机推荐
- Lambda前世今生
1.学习资料 匿名函数 C#编程指南http://msdn.microsoft.com/zh-cn/library/bb882516.aspx Lambda表达式 C#编程指南http://msdn. ...
- 历时八年,HTML5 标准终于完工了
万维网联盟(W3C)2014年10月29日泪流满面地宣布,经过几乎8年的艰辛努力,HTML5标准规范终于最终制定完成了,并已公开发布. 在此之前的几年时间里,已经有很多开发者陆续使用了HTML5的部分 ...
- MVC 局部加载页面的实例
我们在做MVC 进行某一块的局部刷新,有的使用AJAX 请求,有的使用局部页: 下面我给大家推荐一种使用局部页面实现的这种方式: 第一步: 嵌套视图页 <div id="showAud ...
- (转)ZooKeeper 笔记(1) 安装部署及hello world
ZooKeeper 笔记(1) 安装部署及hello world 先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.or ...
- penmount串口触摸屏加载
static irqreturn_t pm_interrupt(struct serio *serio, unsigned char data, unsigned int flags){ struc ...
- 学习jax-ws(一)
1.生成文件时提示class not find ,需要加个cp .,这样就行了 E:\mylearn\learn_webservice\learnJax-ws\bin>wsgen -cp . w ...
- 深入理解CSS3 animation的steps
在应用 CSS3 渐变/动画时,有个控制时间的属性 <timing-function> .它的取值中除了常用到的三次贝塞尔曲线以外,还有个让人比较困惑的 steps() 函数. steps ...
- 为什么Linux的fdisk分区时第一块磁盘分区的First Sector是2048?
这个问题曾经困扰我很久,在了解了MBR之后,我曾认为第一块分区之前为一个block.但是用fdisk查看是2048,一直不了解其中的缘由,今天查了一下资料,大概了解了,其中的细节留着慢慢去了解. 最直 ...
- "Mac OS X"想要进行更改。键入管理员的名称和密码以允许执行此操作("Mac OS X"想使用系统钥匙串)
不知什么时候开始,每次我在运行xcode在真机上,或者archive打包的时间,都会弹出输入用户名和密码的框,搞的烦死了: 解决方法: 打开钥匙串访问 双击那些密钥弹出框: 改变到允许所有应用程序访问 ...
- 百度翻译API
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs& ...