Mysql查询总和并找到平均值

时间:2014-01-03 21:38:17

标签: mysql sum average

我有一个db表,用于存储针对文章的投票。我想查询该表,在过去30天内找到平均获得最佳总票数的文章。

我正在寻找关于如何做到这一点的一些建议,我猜我可以用PHP或MYSQL做到这一点。虽然我对PHP有了更好的把握,但我认为使用MYSQL来获得我的结果是更好的做法。

CREATE TABLE IF NOT EXISTS `ratings` (
  `id` int(11) NOT NULL,
  `article_id` int(11) NOT NULL AUTO_INCREMENT,
  `rating` int(11) NOT NULL,
  `ip` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `timestamp` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=2054 ;

有没有办法求和并找到这个表结构的平均值。

揍你。

艾伦。

1 个答案:

答案 0 :(得分:1)

MySQL中有一个函数AVG()。所以

SELECT AVG(rating) 
FROM ratings
WHERE article_id = 1

将使用article_id 1给出文章的平均评分。

MySQL中还有一个SUM()函数。所以

SELECT SUM(rating) 
FROM ratings
WHERE article_id = 1

将使用article_id 1给出文章所有评级的总和。