首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MYSQL count of count?

MYSQL count of count?
EN

Stack Overflow用户
提问于 2012-10-07 18:17:44
回答 5查看 8.4K关注 0票数 4

我有一个mysql表,如下所示:

代码语言:javascript
运行
复制
id, visitorid, pageid

当访问者访问网站时,它将访问者id和页面id存储为一行。

我试图提取的访问者的数量谁点击网站正好X次。(对于图表)。那么有多少人只访问一个页面,有多少人访问2个页面...

到目前为止,我有:

代码语言:javascript
运行
复制
SELECT COUNT(visid),visid FROM vislog GROUP BY visid ORDER BY COUNT(visid) DESC

但我不知道下一步该怎么计算。

可以像MySQL查询一样做吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-10-07 18:44:11

我可以这样解决它:

代码语言:javascript
运行
复制
SELECT cnt, COUNT(cnt) FROM (
    SELECT COUNT(visid) as cnt FROM vislog GROUP BY visid
) x GROUP BY cnt ORDER BY cnt ASC

x很重要。

票数 -9
EN

Stack Overflow用户

发布于 2012-10-07 18:32:05

您可以将您的查询封装在另一个查询中:

代码语言:javascript
运行
复制
SELECT
    cnt      AS page_visits
  , COUNT(*) AS number_of_visitors
FROM
    ( SELECT 
          COUNT(*) AS cnt                --- use: COUNT(DISTINCT page_id)
                                         --- for a different count
      FROM vislog 
      GROUP BY visid
   ) AS grp
GROUP BY cnt 
ORDER BY number_of_visitors ;

或者(我认为这对于将数字传递到图表更有意义),删除与the相同的ORDER BY

代码语言:javascript
运行
复制
ORDER BY cnt ;
票数 14
EN

Stack Overflow用户

发布于 2012-10-07 18:20:41

一种方法是将此查询封装到另一个查询中:

代码语言:javascript
运行
复制
SELECT COUNT(visid) FROM (
    SELECT COUNT(visid) AS cvisid, visid 
      FROM vislog 
  GROUP BY visid 
  HAVING cvisid = 2) AS c

但是我认为你需要获得访问量的直方图:这可以用PHP来完成(假设查询与问题中的相同):

代码语言:javascript
运行
复制
$results = array();
// query preparation skipped, as it's obviously done by the OP himself
while ($row = $sth->fetch()) {
  $count = $row['cvisid'];
  if (isset($results[$count])) {
    $results[$count]++;
  }
  else {
    $results[$count] = 1;
  }
}

或者使用MySQL本身:

代码语言:javascript
运行
复制
SELECT cvisid, 
       COUNT(cvisid) AS cnt 
  FROM (
    SELECT visid,
           COUNT(visid) AS cvisid 
      FROM vislog 
  GROUP BY visid ) AS c
GROUP BY cvisid
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12767914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档