Datawhale task4: MySQL 基础 (三)- 表联结

MySQL别名
  • 定义:表名、列明后面接AS xx,xx就是表/列的别名,AS也可省略。
  • 作用:
    1.是缩短对象的长度,方便书写,使名称语句简洁
    2.区别同名对象,在自连接查询时,同一个表要连接查询本身,就需要用别名来区分表名及列名;
  • 示例:
    在这里插入图片描述
INNER JOIN
  • 语法:
    在这里插入图片描述
  • 解释:
    inner join(等值连接) 只返回两个表中联结字段相等的行,即取交集
LEFT JOIN
  • 语法 :
    在这里插入图片描述
  • 解释:
    LEFT JOIN (左连接)关键字会返回左表 (table1)所有的行,即使在右表(table2) 中没有匹配到字段相等的行
CROSS JOIN
  • 语法:
    在这里插入图片描述
  • 解释:
    CROSS JOIN又称为笛卡尔乘积,实际上是把两个表乘起来,这个不太好描述清楚,通过实例更好的清楚CROSS JOIN的用法
  • 实例如下:
    在这里插入图片描述
    在这里插入图片描述
    执行如下cross join 语句,连接两个表:
    在这里插入图片描述
    返回结果如下:
    在这里插入图片描述
自连接
  • 语法:
    在这里插入图片描述
  • 解释:
    自连接查询其实等同于连接查询,需要两张表,只不过它的左表(父表)和右表(子表)都是自己。做自连接查询的时候,是自己和自己连接,分别给父表和子表取两个不同的别名,然后附上连接条件
UNION
  • 语法:

1.UNION
在这里插入图片描述
2.UNION ALL
在这里插入图片描述

  • 解释:
  1. UNION 操作符用于合并两个或多个 SELECT 语句的结果集
  2. UNION 操作符选取不同的值,如果允许重复的值,则使用 UNION ALL
  3. UNION 内部的 SELECT 语句必须拥有相同数量的列,列也必须拥有相似的数据类型,同时,每条 SELECT 语句中的列的顺序必须相同
项目五

1.创建表,插入数据
在这里插入图片描述
2.无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:FirstName, LastName, City, State,结果如下:
在这里插入图片描述

项目六

1.创建表,插入数据
在这里插入图片描述
2.删除 email 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个,结果如下:
在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值