0

我在我的网站上跟踪访问者国家/地区,并使用此 mysql 查询来获取顶级访问者国家/地区名称。

mysql_query("SELECT id,country, count(*) as num FROM track GROUP BY country ORDER BY count(*) desc limit 5")

它完美地工作。但是,我想获得 %s 的国家/地区。我怎样才能做到这一点 ?

4

2 回答 2

1

你是说百分比吗?您可以在 MySQL 中执行一些基本的数值运算 - http://dev.mysql.com/doc/refman/5.0/en/numeric-functions.html

如果您希望在同一个查询中执行此操作,您可以添加另一个调用所有行的 COUNT() 的语句,然后使用除法运算符来获取百分比。您还可以将两者分开为不同的查询。

于 2013-04-03T03:58:13.697 回答
1

此联接将报告百分比:

select id, country, num, num*100/total pct
from (SELECT id,country, count(*) as num
      FROM track GROUP BY country
      ORDER BY num desc limit 5) x
join (select count(*) total from track) y
于 2013-04-03T04:02:31.153 回答