帮助SQL语句(JOIN)

Mes*_*ika 8 sql join

我在使用SQL语句时遇到一些麻烦,必须找到参加课程的学生人数.我的数据库设计看起来像这样:

课程: id | 课程名

学生: id | 名称

为了连接两个多对多的关系,我有一张桌子:

course_student: id | course_id | 学生卡

我想要的是找出有多少学生参加名为"数据库设计"的课程.我知道ID是"1",但我要说我不知道​​,我的SQL语句怎么样?

我尝试了好几种不同的语句与不同的连接首先从选择正确的ID 课程表,其中名为"数据库设计"和明年我已经在我的搜索course_student表所在的COURSE_ID等于创办ID(在这种情况下, 1)并且所有student_id都与此id相关联.

我知道这有点复杂的描述所以请告诉我是否必须以更好的方式解释它.

谢谢梅斯蒂卡

Adr*_*der 9

你可以尝试类似的东西

SELECT  COUNT(cs.student_id)
FROM    Course c INNER JOIN
        course_student cs ON c.id = cs.course_id
WHERE   c.course_name = 'Database Design'
Run Code Online (Sandbox Code Playgroud)

你不必加入Students表,因为你已经在course_student表中有了ID,所以少了1个加入.