问题:找出班级中超过五个学生的课程
There is a table courses with columns: student and class
Please list out all classes which have more than or equal to 5 students.
For example, the table:
student | class |
---|---|
A | Math |
B | English |
C | Math |
D | Biology |
E | Math |
F | Computer |
G | Math |
H | Math |
I | Math |
Should output:
class |
---|
math |
Note:
The students should not be counted duplicate in each course.
我的解决方法与标准答案基本一致
select class
from courses
group by class
having count(distinct student)>=5;
注意,我之前没有注意到题目的最后一句话,所以没有加distinct,代码提交错误。由于测试代码中会有重复学生,所以提交出现错误,希望大家也注意distinct的问题。
问题:找出不无聊的电影
X city opened a new cinema, many people would like to go to this cinema. The cinema also gives out a poster indicating the movies’ ratings and descriptions.
Please write a SQL query to output movies with an odd numbered ID and a description that is not ‘boring’. Order the result by rating.
For example, table cinema:
±--------±----------±-------------±----------+
| id | movie | description | rating |
±--------±----------±-------------±----------+
| 1 | War | great 3D | 8.9 |
| 2 | Science | fiction | 8.5 |
| 3 | irish | boring | 6.2 |
| 4 | Ice song | Fantacy | 8.6 |
| 5 | House card| Interesting| 9.1 |
±--------±----------±-------------±----------+
For the example above, the output should be:
±--------±----------±-------------±----------+
| id | movie | description | rating |
±--------±----------±-------------±----------+
| 5 | House card| Interesting| 9.1 |
| 1 | War | great 3D | 8.9 |
±--------±----------±-------------±----------+
我的解决方法与标准答案基本一致
select *
from cinema
where (id%2=1) and (description <>'boring')
order by rating DESC;
注意:整除是mod,不等于也可以是!=