首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Mysql多表查询

Mysql多表查询

作者头像
chao超的搬运文章
发布2023-10-15 19:09:47
发布2023-10-15 19:09:47
84800
代码可运行
举报
文章被收录于专栏:java,hbasejava,hbase
运行总次数:0
代码可运行

前言

学习SQL多表查询,本文就介绍MySQL数据库中联表查询方法

一、MySQL中有几种联表查询方法?

内连接:inner join 或 join

左外连接:left join

右外连接:right join

全连接:Mysql是不支持全连接的,可以利用union合并结果集实现全连接效果

等值连接:where 和内连接一样

笛卡尔积:两张或以上的表数据的 “爆炸” 集合

”导入素材:“

代码语言:javascript
代码运行次数:0
运行
复制
 create table table_1(id int);
 create table table_2(id int);
 insert into table_1 values(1),(2),(3);
 insert into table_2 values(2),(3),(4);

二、实例讲解

1.内连接

代码语言:javascript
代码运行次数:0
运行
复制
select * from table_1 t1 join table_2 t2 on t1.id=t2.id;

  内连接取表之间的交集,它们的交集取决于 on 后面的条件

2.左外连接

代码语言:javascript
代码运行次数:0
运行
复制
select * from table_1 t1 left join table_2 t2 on t1.id=t2.id;

  左外连接取表之间的交集以及左表的全部数据 

3.右外连接

代码语言:javascript
代码运行次数:0
运行
复制
select * from table_1 t1 right join table_2 t2 on t1.id=t2.id;

  与左外连接相反,取表之间的交集和右表的全部数据 

4、全连接

代码语言:javascript
代码运行次数:0
运行
复制
select * from table_1 union select * from table_2;

  知道内连接,左外连接和右外连接后,全连接我想应该也知道了吧。就是多张表的所有数据,但是注意"它们的交集"不能重复出现。

5、等值条件连接

代码语言:javascript
代码运行次数:0
运行
复制
select * from table_1 t1,table_2 t2 where t1.id=t2.id; 

  和内连接一样是取交集 

6、笛卡尔积

代码语言:javascript
代码运行次数:0
运行
复制
select * from table_1,table_2;

实际不会用笛卡尔积,通常是配合条件查询出有效的数据,比如:等值连接查询

总结

以上就是今天要讲的内容,本文仅仅介绍了常用的6种表连接方式,在SQL中还有一些方式,比如:条件不一定得是”等值“,也可以是范围。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-01-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • 一、MySQL中有几种联表查询方法?
  • 二、实例讲解
    • 1.内连接
    • 2.左外连接
    • 3.右外连接
    • 4、全连接
    • 5、等值条件连接
    • 6、笛卡尔积
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档