仅在填写字段时计数

时间:2019-05-19 17:50:15

标签: mysql sql

我对要编写的SQL查询有疑问。假设我在表格中有一列具有以下值的列:学校列:年级。

 SUI grades | Score
  2  9          2
  2  9          
  5  4          1
  5  4          1
  5  4
  6  1          1
  6  1          

现在,我想要一个输出,在该输出中,仅当填满“分数”时才对SUI进行评分。所以我的输出将是:

SUI Count 
 2    1
 5    2
 6    1

3 个答案:

答案 0 :(得分:1)

我会在汇总之前进行过滤:

document.getElementById("drawing").addEventListener("click", myFunction);
        function myFunction() {
            routing1.addTo(map).on('routesfound', function (e) {
                distance = e.routes[0].summary.totalDistance;
                console.log('routing1 ' + distance);
            });
            routing2.addTo(map).on('routesfound', function (e) {
                distance = e.routes[0].summary.totalDistance;
                console.log('routing2 ' + distance);
            });
        }

答案 1 :(得分:1)

如果值只是空白且不是NULL,则可以使用函数<>'' 只会计算其中包含值的字段

SELECT SUI, Count(Grades)
FROM mytable 
WHERE Score <> ''
GROUP BY SUI

答案 2 :(得分:0)

count会忽略null,因此可以使用having条件:

SELECT   sui, COUNT(score)
FROM     mytable
GROUP BY sui
HAVING   COUNT(score) > 0