我需要找到我的网站的流氓,我想知道一天中有多少独特的观点以及来自哪个国家/地区。
我这样做。
有两列ip
和tier
,我需要从中获取点数
列ip
有访问者IP。
列tier
的值分别为1,2,3,4,5
的{{1}}。
我需要获取唯一ip的计数,然后获得各自的层数
tier1,tier2,tier3,tier4,tier5 countries
这给我输出
$date1 = "4-3-2016 00:00:00";
$date2 = "5-3-2016 00:00:00";
$today = strtotime("midnight", strtotime($date1));
$nextday = strtotime("midnight", strtotime($date2));
$query="
SELECT
COUNT(*) AS `unique`
FROM `stats`
WHERE (`date`>='$today' AND `date`<'$nextday')
GROUP BY `ip`, `tier` ORDER BY `tier` DESC;
";
我从中获得了独特的数量,我需要得到层数。
还有这个approch
mysqli_result Object ( [current_field] => 0 [field_count] => 1 [lengths] => [num_rows] => 1411 [type] => 0 )
但这很慢,我想按组进行,如果可能的话。
请建议任何可行的方法。
由于
答案 0 :(得分:0)
这将为您提供与等级
相对应的唯一ips的数量SELECT tier, COUNT(ip) AS IP_COUNT FROM
(SELECT DISTINCT tier, ip
FROM stats
WHERE <your conditions>) A
GROUP BY tier
ips的总数将是所有IP_COUNT的总和