Php 使用MySQL计算唯一IP地址
我正在尝试使用MySQL计算唯一IP地址的总数,这是我查询的结果:Php 使用MySQL计算唯一IP地址,php,mysql,Php,Mysql,我正在尝试使用MySQL计算唯一IP地址的总数,这是我查询的结果: SELECT COUNT(`id`) as `count` FROM `pageviews` WHERE `timestamp` BETWEEN '1299675600' AND '1299762000' GROUP BY `client_ip` 我唯一的问题是,计算IP地址产生的结果,MySQL中是否有方法只计算每一批IP地址,对它们进行唯一的计数,而不是将它们分组然后进行计数 干杯。您可以使用COUNT(DISTINCT…
SELECT COUNT(`id`) as `count` FROM `pageviews` WHERE `timestamp` BETWEEN '1299675600' AND '1299762000' GROUP BY `client_ip`
我唯一的问题是,计算IP地址产生的结果,MySQL中是否有方法只计算每一批IP地址,对它们进行唯一的计数,而不是将它们分组然后进行计数
干杯。您可以使用COUNT(DISTINCT…
来计算唯一ip地址的数量。我不完全确定您的问题是什么,但您可以尝试一下,或者根据您的需要进行调整:
SELECT COUNT(DISTINCT client_ip) as `count`
FROM `pageviews`
WHERE `timestamp` BETWEEN '1299675600' AND '1299762000'
下面应该可以做到这一点:
SELECT COUNT(DISTINCT `client_ip`) as `count` FROM `pageviews` WHERE `timestamp` BETWEEN '1299675600' AND '1299762000'
不需要按客户端ip分组,因为您已经可以使用distinct关键字查询distinct值。关于:
select count(distinct client_ip) as total_num
from pageviews
where `timestamp` BETWEEN '1299675600' AND '1299762000'
在这里,您将计算
不同的ip地址的数量——这应该是您想要的;并且不再需要group by
子句。您可以在COUNT()中使用DISTINCT:
您是否尝试过选择不同的第一条评论,最佳答案。干杯
SELECT COUNT(DISTINCT client_ip) as `count`
FROM `pageviews` WHERE `timestamp` BETWEEN '1299675600' AND '1299762000'