我是第一次来。 所以正如标题所暗示的那样,我有这段代码可以添加、计算、显示学生的所有成绩作为共同平均水平
如果其中一列包含字符串,示例“D”或删除,我试图不显示成绩的综合平均值。但我不知道该怎么做。
SELECT (
SELECT ROUND(AVG(grades_avg))
FROM grades
WHERE studentid = 20160001
AND grades.schoolyearseq_id = 20162017
AND grades.semseq_id = 201620171
) AS average");
因此,我们将不胜感激任何帮助。谢谢
更新 1
大家好,抱歉拖了我很久才更新.. 我尝试实现你们悲伤地提出的答案/评论, 查询仍会输出一个数字。 上面的查询将计算“D”或丢弃为“0”或零。 下面的查询会计算但会忽略 'D' 我还附上了下面的图片
一旦我破解了这个东西,我会尝试更新你们。谢谢
最佳答案
您尝试过添加 WHERE 吗?
WHERE grades.grades_avg NOT IN ('D', 'dropped')
所以它看起来像:
SELECT (SELECT ROUND(AVG(grades_avg))
FROM grades
WHERE studentid = 20160001
AND grades_avg NOT IN ('D', 'dropped')
AND grades.schoolyearseq_id = 20162017
AND grades.semseq_id = 201620171
) AS average");
关于php - 如果其中一个表在 mysql 中包含单词或字符串,如何不显示任何内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56144568/