2016-08-19 50 views
0

我有一个数据库,记录点击到各种着陆页,然后添加一个转换,如果有转换。我想输出一个小表格,显示每个着陆页的总点击量,转化率以及每个页面的转换百分比,如果可能的话使用日期选择器,如“date> = Aug 18”mysql输出拆分测试的网页数,转换百分比

数据库看起来像这样:

page |visitor ip | conversion | date 
pg1 | x.x.x | 1  | Aug 19 
pg3 | x.x.x | 0  | Aug 19 
pg1 | x.x.x | 0  | Aug 19 
pg5 | x.x.x | 0  | Aug 19 
pg1 | x.x.x | 0  | Aug 19 
pg5 | x.x.x | 1  | Aug 19 
pg1 | x.x.x | 1  | Aug 19 
pg3 | x.x.x | 0  | Aug 19 
pg5 | x.x.x | 0  | Aug 19 

想输出的表像这样:

page | total hits | total conversions | conversion rate 
pg1 | 4   |  2    |  50% 
pg3 | 2   |  0    |  0 
pg5 | 3   |  1    |  33% 

谢谢!!!!!!!!!!

+1

'SUM','COUNT'用'GROUP BY' –

+0

目前我有: SELECT page,count(page) FROM stats GROUP by ORDER BY COUNT(page)DESC 但这只是显示前2列,不知道如何将总转化次数加到它 – themike

+0

已经有一段时间了,你没有选择任何答案,也没有给出任何反馈。理解你的问题需要很多,找到一个解决方案并为你写出来。如果解决方案为您工作,请选择并上传它。如果没有,至少让我们知道为什么。 – BeetleJuice

回答

0

使用此查询:

SELECT 
    page , 
    count(page) as 'total hits', 
    SUM(IF(conversion=1,1,0)) as 'total conversions', 
    CONCAT(ROUND(SUM(IF(conversion=1,1,NULL))/count(page) * 100),'%') as Rate  

FROM stats GROUP by page ORDER BY COUNT(page) DESC 

为了得到这样的结果:

enter image description here

Live Demo