列出在 postgresql 中某一列中具有相同值的行

Oma*_*ery 5 sql postgresql

我有两个表,课程和学院。

  • 课程有列:ID(主键)、描述、级别、instructor_id(外键)和学期。
  • Faculties 有列:faculty_id(primary key)、name、date_of_birth、address、email 和 level。

Courses 中的instructor_id 引用Faculties 中的faculty_id。

我正在尝试编写一个查询,其中列出了教授多门课程的所有教师。由于我是 SQL 的新手,所以我完全不知道如何去做。Courses 表中存在与instructor_id 值相同的行。到目前为止,我已经加入了这样的表格:

SELECT "Courses".description, "Faculties".name FROM "Courses" INNER JOIN 
"Faculties" ON "Courses".instructor = "Faculties".faculty_id;
Run Code Online (Sandbox Code Playgroud)

但我不知道如何过滤掉在 Instructor 列下重复值的行(换句话说,过滤具有相同讲师的班级)。

Gor*_*off 10

这是一个聚合查询。如果您只想要讲师 ID,则可以使用:

select instructor_id
from courses
group by instructor_id
having count(*) > 1;
Run Code Online (Sandbox Code Playgroud)

要获取更多信息,请加入另一个表。