sql语言怎么把三个表自然连接在一起?
4个回答
展开全部
把三个表自然连接在一起的方法如下:
1 有关联
select *
from a left join b on a.id=b.id
left join c on b.id=c.id
2 无关联
select id
from a
union all
select id
from b
union all
select id
from c
其中:
inner join 只显示符合条件的数据行,此为默认的join方式,inner 可以省略;
left join 显示符全条件的数据行及左边数据表中不符合条件的数据行;
right join 显示符全条件的数据行及右边数据表中不符合条件的数据行;
full join 显示符全条件的数据行及左边和右边数据表中不符合条件的数据行;
cross join 直接将一个数据表的每一条数据行和另一个数据表的每一条数据行搭配成新的数据 行,不要on 来设置条件。
展开全部
1 有关联
select *
from a left join b on a.id=b.id
left join c on b.id=c.id
2 无关联
select id
from a
union all
select id
from b
union all
select id
from c
大概就这样,一个是用join 关联字段,一个是用union
select *
from a left join b on a.id=b.id
left join c on b.id=c.id
2 无关联
select id
from a
union all
select id
from b
union all
select id
from c
大概就这样,一个是用join 关联字段,一个是用union
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用左联接(left outer join) 右连接(right outer join) 或内连接(inner join)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
三个表相联系,前提是这三个表的某些列肯定是有联系的。
表一:student:sid sname age
表二:teacher: tid tname sid
表三:kecheng: kid kname sid
查询学生 小李 的老师 和 小李需要上的课程
select k.name t.tname from teacher t ,kecheng k ,studend swhere s.sid=t.sid and s.sid=k.sid
简单的例子 其中student teacher kecheng 这三个表中 sid是把这三个表联系起来了。希望能帮到你。
表一:student:sid sname age
表二:teacher: tid tname sid
表三:kecheng: kid kname sid
查询学生 小李 的老师 和 小李需要上的课程
select k.name t.tname from teacher t ,kecheng k ,studend swhere s.sid=t.sid and s.sid=k.sid
简单的例子 其中student teacher kecheng 这三个表中 sid是把这三个表联系起来了。希望能帮到你。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询