PHP MYSQL - Count&相同查询中的平均值

时间:2012-09-05 20:23:32

标签: php mysql count average

这可能非常简单,但我试图做一个将返回结果平均值的查询,但我也希望它计算用于获得平均值的行数。例如:

Row 1 = 5
Row 2 = 2
Row 3 = 9
Row 4 = 1

Average = 4.25
Count = 4

有一种方法可以将一个查询与两个查询相关联。当我使用avg函数总是只返回一行所以我的计数是1而不是4.我需要一个平均的查询,但也告诉我它经历了多少记录。

我试图避免使用两个查询。谢谢你的帮助。

4 个答案:

答案 0 :(得分:7)

这是非常基本的,应该可以通过搜索找到。

SELECT COUNT(field) as `count`, AVG(field) as `average` FROM table_name

答案 1 :(得分:1)

在你所说的条款中 - 如果你不是GROUPing或类似的东西 - 你只需要写

SELECT COUNT(col) AS cnt, AVG(col) AS avg FROM tbl;

你应该没有问题。你得到一行,字段cnt和col包含你需要的东西。

您遇到的问题可能是由于使用mysql_num_rows来计算,这是不正确的。 忘记添加:或者您没有提供整个问题。

答案 2 :(得分:0)

您可以在一个查询中使用多个聚合函数:

SELECT COUNT(*), AVG(field) FROM mytable

答案 3 :(得分:0)

SELECT COUNT(*), AVG(YourColumn)
    FROM YourTable