根据班级分组,统计平均分和不及格的个数.
我的想法是这样的.
Select avg(testScore) as 平均分, count(testScore <600) as 不及格数 , from [Person] Group by Class
但是count(testScore <600)这样写好象不对 ,谁告诉我一下实现这样的效果sql语句该怎么写,急,感谢!!!!
应该是sum不是count吧
sum(testScore) <600
SQL code:
Select avg(testScore) as 平均分, count(testScore) as 不及格数 from [Person] Group by Class where testScore<600
楼上的那样算出来的平均分不包括及格的人了吧
先不说为什么不对,先说好不好:
http://hi.baidu.com/trh87/blog/item/e59827a4a7b4bafe9152ee10.html
详看这篇文章,特别是最后的结论。
DECLARE @v TABLE(
学号 int, 班级 int, 科目 nvarchar(10), 成绩 int);
INSERT @v
SELECT 1, 1, N'语文', 76 UNION ALL
SELECT 1, 1, N'数学', 87 UNION ALL
SELECT 1, 1, N'英语', 99 UNION ALL
SELECT 2, 1, N'语文', 100 UNION ALL
SELECT 2, 1, N'数学', 56 UNION ALL
SELECT 2, 1, N'英语', 35 UNION ALL
SELECT 3, 2, N'语文', 111 UNION ALL
SELECT 3, 2, N'数学', 90 UNION ALL
SELECT 3, 2, N'英语', 114
SELECT
 
....接到一个小程序..工作原来大概是这样的...前台是WEB服务器.架构就是ASP+SQL..前台由ASP向SQL添加服务类别(表单).然后又后台程序读取表单..要实时读取..然后显示在服务器上面..从理论上面能行通不?如果可以..后台 ......