【发布时间】:2014-07-03 14:26:43
【问题描述】:
我正在以下查询获取考试状态是否失败、暂停和通过。页面上还有其他查询,因此我的页面有很多时间来加载。我已经优化了其他查询。
如何结合这些查询来快速获得结果?可能所有这些查询都可以使用“CASE WHEN”进行组合,有人可以帮我优化下面的查询吗?
SELECT COUNT(*) AS countFailMT FROM questionPaper WHERE subjectTopic like 'MT%' result=0)
SELECT COUNT(*) AS countPauseMT FROM questionPaper WHERE subjectTopic like 'MT%' result=-1)
SELECT COUNT(*) AS countPassMT FROM questionPaper WHERE subjectTopic like 'MT%' result>=1)
SELECT COUNT(*) AS countFailEN FROM questionPaper WHERE subjectTopic like 'EN%' result=0)
SELECT COUNT(*) AS countPauseEN FROM questionPaper WHERE subjectTopic like 'EN%' result=-1)
SELECT COUNT(*) AS countPassEN FROM questionPaper WHERE subjectTopic like 'EN%' result>=1)
【问题讨论】:
-
来吧。尝试一下
-
您的
where条件缺少and。 -
或者不要尝试任何事情,只是放松一下,让我们为您完成所有工作。
标签: mysql sql database count case