我正在尝试从MySQL表(列referrer
)中检索引用URL的列表,计算出现多次的URL并按降序列出URL和计数。我不能解决它!!
$ref=$icdb->get_row("SELECT count(1) AS frequency, referrer FROM url_log WHERE u = '".$dom."'GROUP BY referrer ORDER BY frequency DESC");
foreach ($ref as $details) {
echo $details['referrer']."</td><td>".$details['frequency']."</td>";
}
答案 0 :(得分:3)
如果要过滤掉计数为1的项目,可以考虑使用HAVING
子句:
SELECT COUNT(1) AS frequency, referrer
FROM url_log
WHERE u = ?
GROUP BY referrer
HAVING frequency > 1
ORDER BY frequency DESC
本质上,HAVING
子句允许您在计算具有WHERE
子句的主查询指定的初始结果集之后提供其他过滤条件。可能此功能的最常见用法是在聚合字段上指定过滤条件。