尝试计算一个百分比......我需要对一列中的所有值求和(它已经没问题了)但是我需要将结果除以行数......
select sum(voto) from tablename where id = numberHere
答案 0 :(得分:10)
使用COUNT
获取总行数。
SELECT SUM(voto) / (COUNT(*) * 1.0)
FROM tablename
WHERE id = numberHere
在查询中添加* 1.0
将允许结果上的小数位。
或仅仅作为
SELECT AVG(voto)
FROM tablename
WHERE id = numberHere
答案 1 :(得分:3)
JW的答案是正确的,如果你正在寻找通过Summing / Dividing来实现它,但SQL有一个功能。
SELECT AVG(voto) FROM tablename WHERE id = numberHere
AFAIK,它会自动返回与您输入相同的类型(日期列除外,应将其解析为秒,然后重新编码为日期)。
答案 2 :(得分:3)
AVG应该工作,count(*)应该工作,你也可以使用@@ rownum来获取语句返回的行数,如果你需要用这个数字做更多的话。