作者danielguo (Daniel Guo)
看板Database
标题Re: [SQL ] 筛选重复资料加上 SubQuery
时间Wed Jun 1 09:55:12 2011
※ 引述《magiclion (神奇狮子)》之铭言:
: 在一个考试资料表中,我想要找出所有成绩相同的学生并且计算重复数量,
: 所以我写了:
: SELECT grade, COUNT(*) AS count
: FROM student
: GROUP BY grade
: HAVING (COUNT(*) > 1)
: 运作无误,会显示所有相同成绩的资料,第二栏则显示重复数量。
: 但是该资料表是将每次测验都写在一起,用栏位 s 区隔,因此必须加入 s 筛选,
: 所以我加了 SubQuery:
: SELECT grade FROM student
: WHERE s=3 AND grade IN (
: SELECT grade FROM student
: GROUP BY grade HAVING (COUNT(*) > 1))
: 这样运作也是正常的,只是我就无法加入一个 COUNT 栏位来计算重复数量了。
: 这个 COUNT(*) AS count 不管加在哪里都不对,不知各位先进有无方法可以
: 让这个 SQL 有加入计算重复数量栏位的功能?
不是很确定想要的效果, 是让第一个 query 只查询指定测验的结果吗, 如果这样?
SELECT grade, COUNT(*) AS count
FROM student
WHERE s = 3
GROUP BY grade
HAVING COUNT(*) > 1
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 71.107.127.201