+ -
当前位置:首页 → 问答吧 → 求助复杂的SQL语句统计PV,ip

求助复杂的SQL语句统计PV,ip

时间:2011-09-08

来源:互联网

关于怎么统计出2天不同企业的独立IP总数和pv
目前的表结构
表:pv
字段id,ip,date_time,cname

入库是这样的。主要页面点击一次,数据库就插入一条数据

数据如下
结果1:
1 127.0.0.1 2000-1-1,企业1
2 127.0.0.1 2000-1-1,企业1
3 127.0.0.2 2000-1-2,企业1
4 127.0.0.1 2000-1-2,企业1
5 127.0.0.3 2000-1-3,企业2
6 127.0.0.3 2000-1-3,企业2


我希望得到的结果是

查询日期2000-1-1至2000-1-3根据企业统计得到pv总数,和IP独立数 ,一天之内的同样IP算1个,ID为1,2的IP为1个,3为1个,4IP是第二天所以也算一个得到应该是3,请问根据这样写

企业名称 pv ip
企业1 4 3
企业2 2 1

目前我的sql语句是这样写的。但是
select count(id) as pvcount,COUNT(DISTINCT(ip)) as countip from pv where date between '2000-1-1' and '2000-1-3' group by cname
我这样得到的结果值,
结果2
企业名称 pv ip
企业1 4 2  
企业2 2 1


我希望得到的数据是结果1,而不是结果2,因为结果2是把所有天数IP,然后进行不是重复的值进行求总的。
请大侠求助我想得到结果1Sql语句怎么写呢

作者: startus2104644885   发布时间: 2011-09-08

关于怎么统计出2天不同企业的独立IP总数和pv
目前的表结构
表:pv
字段id,ip,date_time,cname

入库是这样的。主要页面点击一次,数据库就插入一条数据

数据结构如下

1 127.0.0.1 2000-1-1,企业1
2 127.0.0.1 2000-1-1,企业1
3 127.0.0.2 2000-1-2,企业1
4 127.0.0.1 2000-1-2,企业1
5 127.0.0.3 2000-1-3,企业2
6 127.0.0.3 2000-1-3,企业2


我希望得到的结果是

查询日期2000-1-1至2000-1-3根据企业统计得到pv总数,和IP独立数 ,一天之内的同样IP算1个,ID为1,2的IP为1个,3为1个,4IP是第二天所以也算一个得到应该是3,请问根据这样写
结果1:也是我希望要展示的结果
企业名称 pv ip
企业1 4 3
企业2 2 1

目前我的sql语句是这样写的。但是
select count(id) as pvcount,COUNT(DISTINCT(ip)) as countip from pv where date between '2000-1-1' and '2000-1-3' group by cname
我这样得到的结果值,
结果2
企业名称 pv ip
企业1 4 2  
企业2 2 1


我希望得到的数据是结果1,而不是结果2,因为结果2是把所有天数IP,然后进行不是重复的值进行求总的。
请大侠求助我想得到结果1Sql语句怎么写呢

作者: startus2104644885   发布时间: 2011-09-08