Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从0和1的列表中查找SQL中的百分比?_Sql_Sql Server 2005 - Fatal编程技术网

如何从0和1的列表中查找SQL中的百分比?

如何从0和1的列表中查找SQL中的百分比?,sql,sql-server-2005,Sql,Sql Server 2005,我有这样的结果集- id achieved 1 0 2 1 3 1 4 0 5 0 百分比应为2/5,即40%。如何编写SQL查询以实现类似的功能?我不希望使用和嵌套select,因为实际查询已经做了很多。谢谢 select avg(achieved) from ... 请注意,您必须使用group by函数来包括类别: select gender, avg(achieved) from ... group by gender +1但如果数据类型为位则需要

我有这样的结果集-

id achieved
1    0
2    1
3    1
4    0 
5    0
百分比应为2/5,即40%。如何编写SQL查询以实现类似的功能?我不希望使用和嵌套select,因为实际查询已经做了很多。谢谢

select avg(achieved) from ... 
请注意,您必须使用group by函数来包括类别:

select gender, avg(achieved) from ... group by gender

+1但如果数据类型为
则需要
AVG(CAST(实现为FLOAT))
或类似内容,以避免出现错误“操作数数据类型位对AVG运算符无效”。这实际上并没有给我百分比。我可能想做
100*AVG()
。并且会给我百分比!谢谢你的回复@如果你想的话,你可以做平均值(已实现)*100。这就是你的意思吗?