罗嗦的SQL语句,该怎么解决
罗嗦的SQL语句
SELECT ID,MyContent,1.0*(SELECT COUNT(*) FROM ExamingPaperSave WHERE Answer <> MyAnswer) / (SELECT COUNT(*) FROM ExamingPaperSave)*100 AS 错误率 FROM ExamingPaperSave GROUP BY ID,MyContent ORDER BY 错误率
每个ID对应一题目,题目在显示出来的时候不能重复显示,显示的结果为下面三个字段
题目ID MyContent 错误率
这个错误率最罗嗦了。要求算出每题的错误率后,按照错误率降序排序,如果单独显示不重复的题目ID MyContent 倒简单,关键是加了个错误率后,得出的结果老是一样,都为48.8,不可能每题的错误率都相同的哦。
求帮助!
------解决思路----------------------
SELECT COUNT(*) FROM ExamingPaperSave WHERE Answer <> MyAnswer
group by应该加在这里,而不是加在最外面
你这里不分组查询,那可不是只查询出一个总数来吗
SELECT ID,MyContent,1.0*(SELECT COUNT(*) FROM ExamingPaperSave WHERE Answer <> MyAnswer) / (SELECT COUNT(*) FROM ExamingPaperSave)*100 AS 错误率 FROM ExamingPaperSave GROUP BY ID,MyContent ORDER BY 错误率
每个ID对应一题目,题目在显示出来的时候不能重复显示,显示的结果为下面三个字段
题目ID MyContent 错误率
这个错误率最罗嗦了。要求算出每题的错误率后,按照错误率降序排序,如果单独显示不重复的题目ID MyContent 倒简单,关键是加了个错误率后,得出的结果老是一样,都为48.8,不可能每题的错误率都相同的哦。
求帮助!
------解决思路----------------------
SELECT COUNT(*) FROM ExamingPaperSave WHERE Answer <> MyAnswer
group by应该加在这里,而不是加在最外面
你这里不分组查询,那可不是只查询出一个总数来吗