使用联结表从两个表中获取数据

时间:2013-02-07 20:24:52

标签: sql sql-server-2008

所以我有一个userId和schoolId的用户表,它指向userId和courseId组成的userInstitution表。指向userInstitution表的是课程表,它由courseId和schoolId组成。

用户表 - > userInstitution表< - 课程表

我想更新用户以分配某个课程,我也想知道如何选择具有特定课程的用户。

2 个答案:

答案 0 :(得分:2)

为用户分配课程。

insert into userInstitution 
(userid, courseid)
values
(the ids for the course and user)

选择特定课程的用户

select u.name
from users u join userInstitution ui on u.userid = ui.userid
join course c on ui.courseid = c.courseid
where c.name = 'name of course'

答案 1 :(得分:0)

从用户中选择用户。* 加入userInstitution 在user.id = userInstitution.userId上 加入课程 在course.id = userInstitution.courseId where course.id = 321

此sql将为您提供已注册到课程编号为321的所有用户