作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 SQL 查询来了解有多少学生在同一学期学习了 2 个科目。
我有一个有 3 行的表格,我想找出哪个学生在同一学期同时学习了科目“4877”和“4897”。但我不知道如何形容“同一学期”。
student subject semester1070781 4877 1261070781 4897 1261076677 4877 1351078595 4877 1261078595 4897 1261078716 4897 1271079496 4877 1261079496 4897 1261079627 4897 1271080640 4877 127...
SELECT student
FROM table
WHERE "studied 4877 and 4897 in the same semester";
student10707811078595 1079496 ...
最佳答案
您可以使用此查询:
SELECT studentid, semester
FROM mytable
WHERE subject IN (4877, 4897)
GROUP BY studentid, semester
HAVING COUNT(DISTINCT subject) = 2
查询返回至少在一个学期内参加过这两个科目的所有学生 ID。
注意:HAVING
子句使用COUNT DISTINCT
而不是简单的COUNT
以避免返回false正面记录如下例:
student subject semester
------------------------
1070781 4877 126
1070781 4877 126
关于sql - 如何在 'same' 条件下选择一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55702611/
我是一名优秀的程序员,十分优秀!