学生表
id name
1 张三
2 李四
3 王五
4 赵六选课表
id stuid couseid
1 1 2
2 1 3
3 1 4
4 2 1
5 2 2
6 3 3课程表
id cousename
1 计算机
2 数学
3 语文
4 英语查询结果:
name couseid cousename
张三 2 数学
张三 3 语文
张三 4 英语
李四 1 计算机
李四 2 数学
王五 3 语文 请问如何做链接查询得到以上查询结果?
id name
1 张三
2 李四
3 王五
4 赵六选课表
id stuid couseid
1 1 2
2 1 3
3 1 4
4 2 1
5 2 2
6 3 3课程表
id cousename
1 计算机
2 数学
3 语文
4 英语查询结果:
name couseid cousename
张三 2 数学
张三 3 语文
张三 4 英语
李四 1 计算机
李四 2 数学
王五 3 语文 请问如何做链接查询得到以上查询结果?
select s.name, x.couseid, c.cousename
from 学生表 s, 选课表 x, 课程表 c
where s.id=x.stuid
and x.couseid=c.id;
select 1 id,'张三' name from dual union all
select 2 id,'李四' name from dual union all
select 3 id,'王五' name from dual union all
select 4 id,'赵六' name from dual),
selcouse as (
select 1 id, 1 stuid, 2 couseid from dual union all
select 2 id, 1 stuid, 3 couseid from dual union all
select 3 id, 1 stuid, 4 couseid from dual union all
select 4 id, 2 stuid, 1 couseid from dual union all
select 5 id, 2 stuid, 2 couseid from dual union all
select 6 id, 3 stuid, 3 couseid from dual),
course as(
select 1 id,'计算机' cousename from dual union all
select 2 id,'数学' cousename from dual union all
select 3 id,'语文' cousename from dual union all
select 4 id,'英语' cousename from dual)
SELECT s.name, l.couseid, c.cousename
FROM student s, selcouse l, course c
WHERE s.id = l.stuid AND
l.couseid = c.id
ORDER BY s.id;
select a.name,b.couseid,c.cousename
from 学生表 a,选课表 b,课程表 c
where a.id=b.stuid and b.couseid=c.id
from student_test a, selcouse_test b, course_test c
where a.id = b.stuid
and b.couseid =c.id