MySQL,查詢及格人數,不及格人數

一個表score,字段是name,class,score。分別表明姓名,所在班級,分數。
要求用一條語句查出每一個班的及格人數和不及格人數,格式爲:class,及格人數,不及格人數。
SELECT `class`,
SUM(CASE WHEN score>=60 THEN 1 ELSE 0 END),
SUM(CASE WHEN score>=60 THEN 0 ELSE 1 END)
FROM score
GROUP BY 1            //1表明第1列 或 GROUP BY `class` class

--
-- 表的結構 `score`
--
 
CREATE TABLE IF NOT EXISTS `score` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  `class` int(11) NOT NULL,
  `score` varchar(10) NOT NULL,
  `txt` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;
 
--
-- 轉存表中的數據 `score`
--
 
INSERT INTO `score` (`id`, `name`, `class`, `score`, `txt`) VALUES
(1, '張三', 1, '60', ''),
(2, '李四', 2, '80', ''),
(3, '張三1', 1, '20', ''),
(4, '李四2', 2, '40', ''),
(5, '張三2', 1, '50', ''),
(6, '李四3', 2, '90', ''),
(7, '王五', 1, '90', ''),
(8, '李六', 2, '85', '');數據

相關文章
相關標籤/搜索