如何在mysql表的列中按值添加组

A. *_*ved 3 mysql

我有一个mysql表,如下所示

   **ip                  page                date                 page_Views
127.0.0.1              index.php           2012-07-09              25
182.445.11.1           abc.php             2012-07-09              11
116.142.24.7           index.php           2012-07-09              3 
Run Code Online (Sandbox Code Playgroud)

我想提取按页面分组的page_views列

这意味着'index.php'它显示page_view = 28

我正在使用此查询

SELECT*FROM stats_trackerGROUP BY page ORDER BY stats_tracker.page_viewsDESC

使用此查询我根据页面对page_views进行分组,但不添加

根据我的上述查询,index.php = 25的page_views

Chr*_*hey 8

您需要SUM聚合函数:

SELECT
  ip,
  page,
  CONCAT(MIN(date), " - ", MAX(date)) as date_range,
  SUM(page_views) as total_page_views
FROM stats_tracker
GROUP BY page
ORDER BY total_page_views DESC
Run Code Online (Sandbox Code Playgroud)

其基本理由是,MySQL不知道怎么想值时,结合你组.有时你想要数,有时总和,甚至平均可用.查看MySQL Aggregate Functions页面.