无法获取mysql查询同时输出用户和计数

时间:2011-04-07 19:33:47

标签: php mysql count

我是mysql查询的新手,请原谅我,如果我错过了一些愚蠢的东西。 我有一个名为marketeers的表,其中包含字段id,用户,站点,链接,ip。 人们点击我网站上的不同链接,它收集有关IP地址和建立链接的用户的信息,以便我可以确定哪个链接表现最佳。

我希望它计算链接所具有的唯一IP,然后显示用户,计算唯一链接和链接本身。

它几乎可以工作,但它不会显示用户。这是代码。

感谢您的帮助......

$query = "SELECT link, COUNT(DISTINCT(ip)) FROM marketeers GROUP BY link ORDER BY COUNT(DISTINCT(ip))";

// Execute the query
$result = mysql_query( $query );
echo $result;
echo "<br><br>";
if (!$result){
die ("Could not query the database: <br />". mysql_error( ));
}
else{
while($row = mysql_fetch_array($result))
{
    echo "{$row['user']} ".
    "{$row[count('ip')]}  " .
         "{$row['link']}<br><br> ";
}   

 }
}

2 个答案:

答案 0 :(得分:3)

您没有从数据库中选择用户字段。你只提取两个字段。 '链接',以及IP的数量。试试这个:

SELECT link, COUNT(DISTINCT(ip)) as cnt, user FROM ...

然后

echo "{$row['user']} {'$row['cnt']} {$row['link']}<br />";

答案 1 :(得分:1)

你不是要求用户,所以这是合乎逻辑的,它不存在:)

尝试:

SELECT user, link, COUNT(DISTINCT(ip)) FROM ....