Php 按行数对列和dividide中的SQL值求和

Php 按行数对列和dividide中的SQL值求和,php,mysql,sql,select,Php,Mysql,Sql,Select,我试图计算一个百分比…我需要求一列中所有值的和(已经可以了),但我需要将结果除以行数 select sum(voto) from tablename where id = numberHere 使用COUNT获取总行数 SELECT SUM(voto) / (COUNT(*) * 1.0) FROM tablename WHERE id = numberHere 通过在查询中添加*1.0,将允许在结果中使用小数位 或者干脆 SELECT AVG(voto) FROM tabl

我试图计算一个百分比…我需要求一列中所有值的和(已经可以了),但我需要将结果除以行数

 select sum(voto) from tablename where id = numberHere

使用
COUNT
获取总行数

SELECT SUM(voto) / (COUNT(*) * 1.0) 
FROM   tablename 
WHERE  id = numberHere
通过在查询中添加
*1.0
,将允许在结果中使用小数位

或者干脆

SELECT AVG(voto)
FROM   tablename 
WHERE  id = numberHere

如果您特别希望通过求和/除法来实现,那么JW的答案是正确的,但是SQL有一个函数来实现这一点

SELECT AVG(voto) FROM tablename WHERE id = numberHere

好的,它会自动返回与您输入相同的类型(日期列除外,它应该被解析为秒,然后重新编码为日期)。

AVG应该可以工作,count(*)应该可以工作,如果您需要更多地使用该数字,您还可以使用@rownum获取语句返回的行数。

这与
AVG(voto)不一样吗
?@a_horse_,名称为yes
AVG(voto*1.0)
@JW。thx很多..但是计数需要是我拥有的id的行数specified@illDev是的,无论如何,如果您不想指定
id
并且想计算每个id的整个记录,只需使用group by
从tablename group by id中选择id,AVG(voto)