【发布时间】:2011-10-10 19:11:04
【问题描述】:
试图跟踪 AdWords 访问会导致大量点击欺诈。
问题是日志过于热心,因此它经常会记录 1 次访问。这很明显,因为两个 time 和 ip 是相同的。只是无法将其转换为 SQL。
这会在 IP 匹配且时间匹配时返回 2 次以上的点击。
SELECT DISTINCT wmf24_statpress.time, count(ip) AS clicks, ip
FROM wmf24_statpress
WHERE urlrequested LIKE '%gclid=%'
GROUP BY ip
【问题讨论】:
-
确实没有必要同时使用 Group By 子句和 Distinct 关键字。使用其中一种。在这种情况下,为了获得 Count,您需要 Group By,因此转储 Distinct 关键字。
-
这与一小时前发布的(已关闭)问题非常相似。
-
这不是一个真正的问题,如果您说明输入是什么样的,输出 是什么 以及输出应该是什么(只是一些相关的 sn-ps) 那么这个问题是可以回答的。就目前而言,您的查询效率有些低,但应该可以正常工作。正因为如此,你得到了错误的答案。投票结束。
-
在标准 SQL 中,所有 ungrouped columns in the SELECT list 都必须出现在 GROUP BY 子句中。 MYSQL 允许 SELECT 列表中的非分组列。但这不是你想要的。你也想按时间分组。否则,所有相同的 ip 将被归为一组,并从组中随机抽取一次。
标签: mysql sql wordpress select distinct