客户A数据统计

--------------------------------------------------
--数据准备

/*将数据调入临时表,对advalues进行计算,并将月份更新到字段int1
*/ update LinShi.dbo.Temp_Report715 set advalues = num1*int2 where isweb = 0 and advFinal is null update LinShi.dbo.Temp_Report715 set advalues = a.adv from working.dbo.adv_final as a where a.clippingid = LinShi.dbo.Temp_Report715.tempclippingid update LinShi.dbo.Temp_Report715 set advalues = 0 where advalues is null update LinShi.dbo.Temp_Report715 set int1 = month(index_date) from clipping.dbo.clippings as a where a.accountid = 2139 and a.clippingid = tempClippingid update LinShi.dbo.Temp_Report715 set int1 = month(media_date) from clipping.dbo.clippings as a where a.accountid = 2139 and a.clippingid = tempClippingid and DATEDIFF(mm,'2013-5-1',index_date)<0 ---------------------------------------------------------- --表格1 -- (按月份统计)平面 剪报数量,广告价值 select COUNT(*) tot, SUM(ROUND(advalues,0)) adv from linshi.dbo.temp_report715 where int1 = 1 and isweb = 0 -- (按月份统计)网络 剪报数量,广告价值 select COUNT(*) tot, SUM(ROUND(advalues,0)) adv from linshi.dbo.temp_report715 where int1 = 1 and isweb = 1 -- (按月份统计)全部(平面+网络) 剪报数量,广告价值 select COUNT(*) tot, SUM(ROUND(advalues,0)) adv from linshi.dbo.temp_report715 where int1 = 1 -- (统计全部 剪报数量,广告价值) select COUNT(*) tot, SUM(ROUND(advalues,0)) adv from linshi.dbo.temp_report715 -------------------------------------------------------------- --表格2 -- (统计全部)中文目录,英文目录,Clippings number,Ad value -- 没有剪报的目录不列出来 select a.cateid,b.cate,b.e_cate,COUNT(*) tot, SUM(ROUND(advalues,0)) adv from linshi.dbo.temp_report715 as a join clipping.dbo.categories as b on a.cateid = b.cateid group by a.cateid,b.e_cate,b.cate order by tot desc -------------------------------------------------------------- --表格3 多选标引统计 --(统计平面)多选标引名称,Clippings number,Ad value select b.MultiID,multiname,COUNT(*) tot ,SUM(ROUND(advalues,0)) adv from LinShi.dbo.temp_Report715 as a join working.dbo.MultiIndex as b on a.tempClippingid = b.clippingid join working.dbo.MultiIndexName as c on b.multiid = c.multiid where isweb = 0 group by b.MultiID,multiname order by tot desc --(统计网络)多选标引名称,Clippings number,Ad value select b.MultiID,multiname,COUNT(*) tot ,SUM(ROUND(advalues,0)) adv from LinShi.dbo.temp_Report715 as a join working.dbo.MultiIndex as b on a.tempClippingid = b.clippingid join working.dbo.MultiIndexName as c on b.multiid = c.multiid where isweb = 1 group by b.MultiID,multiname order by tot desc -- (统计全部)多选标引名称,Clippings number,Ad value select b.MultiID,multiname,COUNT(*) tot ,SUM(ROUND(advalues,0)) adv from LinShi.dbo.temp_Report715 as a join working.dbo.MultiIndex as b on a.tempClippingid = b.clippingid join working.dbo.MultiIndexName as c on b.multiid = c.multiid group by b.MultiID,multiname order by tot desc -------------------------------------------------------------- --表格5 评分类型统计 --所有评分类型的统计 --substring(class,charindex(',',class)+1 ,100)得到评分类型英文名称 select a.classid,substring(class,charindex(',',class)+1 ,100),COUNT(*) tot ,SUM(ROUND(advalues,0)) adv from working.dbo.评分 as a join LinShi.dbo.temp_Report715 as b on a.clippingid=b.tempClippingid join working.dbo.评分分类 as c on c.classid=a.classid group by a.classid,class order by tot desc --表格4 评分项目统计 --每个class下的所有项目的统计 --每个classid都要执行一次 select a.itemid,substring(item,charindex(',',item)+1 ,100),COUNT(*) tot ,SUM(ROUND(advalues,0)) adv from working.dbo.评分 as a join LinShi.dbo.temp_Report715 as b on a.clippingid=b.tempClippingid join working.dbo.评分项目 as c on c.itemid=a.itemid where a.classid = 65 group by a.itemid,item order by tot desc

 

posted @ 2013-07-01 12:55  踏雪寻梅梅未开  阅读(225)  评论(0编辑  收藏  举报