如何在 SQL 中使用 distinct 关键字?

How to use distinct keyword in SQL?

我尝试了以下查询:

select class
from courses
WHERE distinct student
having count(class)>=5 ;

基本上我试图同时获取所有计数超过 5.On 的 classes 我正在努力避免重复学生。所以这意味着一个学生只能对应一个class。但是我有一个语法错误。任何帮助,将不胜感激。 输入示例: {"headers": {"courses": ["student", "class"]}, "rows": {"courses": [["A", "Math"], ["B", "English"], ["C", "Math"], ["D", "Biology"], [ "E", "Math"], ["F", "Math"], ["A", "Math"]]}} 示例输出: {"headers":["class"],"values":[]}

我知道您想要 class 至少有 5 名不属于另一个 class 学生的课程。

如果是这样,您可以使用聚合和 not exists:

select class
from courses c
where not exists (
    select 1 from class c1 where c1.class <> c.class and c1.student = c.student
)
group by class
having count(*) > 5

如果您想要 类 有五个或更多学生,您需要聚合:

select class
from courses
group by class
having count(*) >= 5