计算sql结果并用PHP显示

时间:2014-01-30 21:14:55

标签: php mysql foreach

我正在尝试从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>";
}

1 个答案:

答案 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子句的主查询指定的初始结果集之后提供其他过滤条件。可能此功能的最常见用法是在聚合字段上指定过滤条件。