Mysql 知识点

sql语句

连接

转载于: mysql外连接、内连接的区别,作者:mark hunt

内连接

只有条件的交叉连接,根据某个条件筛选出符合条件的记录,不符合条件的记录不会出现在结果集中,即内连接只连接匹配的行

外连接

外连接:其结果集中不仅包含符合连接条件的行,而且还会包括左表右表两个表中的所有数据行,这三种情况依次称之为左外连接右外连接,和全外连接

左外连接,也称左连接,左表为主表,左表中的所有记录都会出现在结果集中,对于那些在右表中并没有匹配的记录,仍然要显示,右边对应的那些字段值以NULL来填充

右外连接,也称右连接,右表为主表,右表中的所有记录都会出现在结果集中。左连接和右连接可以互换。

MySQL目前还不支持全外连接

举例

		select u.id
		as userId,userName,courseName,corp,c.id as courseId,teacher.id as
		teacherId,teacherName 
		from user u 
		left join userCourse uc on u.id=uc.user_id
		left join course c on c.id = uc.course_id 
		left join teacher on teacher.id = c.teacher_id 
		where u.id= #{id}

user->userCourse->course ->teacher
user表和userCourse表生成一张中间表A,以user数据为标准
A表和course表生成一张中间表B,以user数据为标准
B表和teacher 表生成一张表C,表C的结构为user结构

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值