| 有一张表T_Scores,记录比赛成绩  sDate      sName       Score 2008-8-8     拜仁         胜
 2008-8-9     奇才         胜
 2008-8-9     湖人         胜
 2008-8-10   拜仁         负
 2008-8-8     拜仁         负
 2008-8-12   奇才         胜
 
 
 要求输出下面的格式:
 Name 胜  负
 拜仁 1   2
 湖人 1   0
 奇才 2   0
 
 
 SELECT sname,
 SUM(CASE
 WHEN score='胜' THEN 1   ELSE 0   END) AS 胜 ,
 SUM(CASE
 WHEN score='负' THEN 1 ELSE 0 END) AS 负
 FROM test3
 GROUP BY sname
 
 这段查询语句中
 SUM(CASE
 WHEN score='胜' THEN 1   ELSE 0   END) AS 胜  sum函数是如何统计的?原理是怎么实现的? 我是认为当score='负' 的时候在这断代码中sum也会统计可是SQL语句是如何不统计这个呢?
 
 |