MySQL连接查询之内连接、左连接、右连接、自连接
目录
一、内连接
1. 连接查询的介绍
2. 内连接查询
二、左连接
1. 左连接查询
三、右连接
1. 右连接查询
四、自连接
1. 自连接查询
一、内连接
1. 连接查询的介绍
连接查询可以实现多个表的查询,当查询的字段数据来自不同的表就可以使用连接查询来完成。
连接查询可以分为:
- 内连接查询
- 左连接查询
- 右连接查询
- 自连接查询
2. 内连接查询
查询两个表中符合条件的共有记录
内连接查询效果图:
内连接查询语法格式:
select 字段 from 表1 inner join 表2 on 表1.字段1 = 表2.字段2
说明:
- inner join 就是内连接查询关键字
- on 就是连接查询条件
例1:使用内连接查询学生表与班级表:
select * from students as s inner join classes as c on s.cls_id = c.id;
二、左连接
1. 左连接查询
以左表为主根据条件查询右表数据,如果根据条件查询右表数据不存在使用null值填充
左连接查询效果图:
左连接查询语法格式:
select 字段 from 表1 left join 表2 on 表1.字段1 = 表2.字段2
说明:
- left join 就是左连接查询关键字
- on 就是连接查询条件
- 表1 是左表
- 表2 是右表
例1:使用左连接查询学生表与班级表:
select * from students as s left join classes as c on s.cls_id = c.id;
三、右连接
1. 右连接查询
以右表为主根据条件查询左表数据,如果根据条件查询左表数据不存在使用null值填充
右连接查询效果图:
右连接查询语法格式:
select 字段 from 表1 right join 表2 on 表1.字段1 = 表2.字段2
说明:
- right join 就是右连接查询关键字
- on 就是连接查询条件
- 表1 是左表
- 表2 是右表
例1:使用右连接查询学生表与班级表:
select * from students as s right join classes as c on s.cls_id = c.id;
四、自连接
1. 自连接查询
左表和右表是同一个表,根据连接查询条件查询两个表中的数据。
区域表效果图
例1:查询省的名称为“山西省”的所有城市
创建areas表:
create table areas(id varchar(30) not null primary key, title varchar(30), pid varchar(30)
);
执行sql文件给areas表导入数据:
source areas.sql;
说明:
- source 表示执行的sql文件
自连接查询的用法:
select c.id, c.title, c.pid, p.title from areas as c inner join areas as p on c.pid = p.id where p.title = '山西省';
说明:
- 自连接查询必须对表起别名
Python零基础笔记汇总: |
|||
Python解释器详解 |
注释作用及分类 | 运算符总结 | 定义变量与数据类型 |
if判断与循环总结 | 理解面向对象 | 集合操作方法 | 列表的常用操作 |
Python异常 | 元组应用及操作 | ||
Python爬虫笔记篇(含项目实战案例): |
|||
代理池概述及开发环境 | 代理池的设计 | 实现代理池思路 | 定义代理IP的数据模型类 |
实现代理池工具模块 | 实现代理池的校验模块 | 实现代理池的数据库模块 | 实现代理池的爬虫模块 |
实现代理池的检测模块 |
实现代理池的API模块 |
Bilibili模拟登陆(滑动验证码) | |
Python Web篇笔记(更新中……): |
|||
Part 01—Linux基础命令 | |||
操作系统与虚拟机软件 | 了解Ubuntu操作系统 | Linux查看、切换目录命令 | 绝对路径和相对路径 |
创建、删除、复制、移动文件及目录命令 | ls命令选项 | mkdir和rm命令选项 | cp和mv命令选项 |
Part 02—Linux高级命令 | |||
重定向命令 | 查看文件内容命令、链接命令 | 文本搜索命令 | 查找文件命令 |
压缩和解压缩命令 | 文件权限命令 | 获取管理员权限的相关命令 | 用户相关操作 |
用户组相关操作 | 远程登录、远程拷贝命令 | ||
静态Web服务器 | |||
搭建Python自带静态Web服务器 | 静态Web服务器-返回固定页面数据 | 静态Web服务器-返回指定页面数据 | 静态Web服务器-多任务版 |
静态Web服务器-面向对象开发 | 静态Web服务器-命令行启动动态绑定端口号 | ||
MySQL数据库的基本使用 | |||
了解数据库的作用、特点及关系型数据库管理系统 | MySQL数据库的安装介绍 | 数据类型和约束 | 命令行客户端MySQL的使用 |
as和distinct关键字 | SQL语句—where条件查询 | MySQL之排序查询与分页查询 | |
MySQL数据库的条件查询 | |||
mysql中常见的聚合函数 | Mysql之分组查询 |
2022年Python+大数据学习路线图,源码笔记,最优学习资源_黑马程序员官方的博客-CSDN博客任何学习过程都需要一个科学合理的学习路线,才能够有条不紊的完成我们的学习目标。Python+大数据所需学习的内容纷繁复杂,难度较大,所以今天特别为大家整理了一个全面的Python+大数据学习路线图,帮大家理清思路,攻破难关!文章目录前言第一阶段 大数据开发入门1.大数据数据开发基础MySQL8.0从入门到精通第二阶段 大数据核心基础2022版大数据Hadoop入门教程第三阶段 千亿级数仓技术数据离线数据仓库,企业级在线教育项目实战(Hive数仓项目完整流程)第四阶段 PB内存计算1.pythohttps://blog.csdn.net/itcast_cn/article/details/1223065522022年人工智能学习路线图,清楚明确_黑马程序员官方的博客-CSDN博客_人工智能学习路线图众所周知,人工智能时代已经融入到我们的生活的当中,不论是图像识别还是语音识别的相关产品已经开始落地,就连国家都将人工智能设为了国家战略级发展规划,人工智能开发将会是是未来技术研究的前沿。下面特别给大家整理了人工智能的学习路线,希望大家都能有清楚的学习方向。文章目录第一阶段 人工智能开发入门1. 人工智能之python编程零基础入门2、4天快速入门Python数据挖掘第二阶段 机器学习核心技术第三阶段 NLP自然语言处理技术第四阶段 CV计算机视觉技术1.AI-OpenCV图像处理10小时零基础入门2https://blog.csdn.net/itcast_cn/article/details/122882407
详情大家可以关注Python专栏,努力为大家更新更多好内容 ↑ ↑ ↑
MySQL连接查询之内连接、左连接、右连接、自连接相关推荐
- 数据库---四中连接查询(交叉、左连接、右连接、完整查询)
个人博客 :https://www.siyuan.run CSDN:https://blog.csdn.net/siyuan 微信小程序:思远Y 1.交叉连接查询 : (基本不适用---得到的是两张表 ...
- 二、MySQL连接查询学习笔记(多表连接查询:内连接,外连接,交叉连接详解)
MySQL连接查询(多表连接查询:内连接,外连接,交叉连接详解) 6:多表连接查询 笛卡尔乘积:如果连接条件省略或无效则会出现 解决办法:添加上连接条件 连接查询的分类: 1.按年代分类:1)sql ...
- oracle表连接查询逗号隔开_Oracle多表连接查询
连接:将一张表中的行按照某种条件和另一张表中的行连接起来形成一个新行的的过程. 根据连接查询返回的结果,分为3类: 内连接(inner join) 外连接(outer join) 交叉连接(cross ...
- Oracle学习笔记(三)。连接查询。等值连接,非等值连接,自连接,LEFT OUTER JOIN,RIGHT JOIN,FULL JOIN,自然连接,内连接 INNERJOIN
文章目录 1. 什么是多表查询 2. 多表链接方式 3. 多表连接语法 3.1 语法结构 3.2 定义连接 3.3 原则 4. 等值连接-内连接 4.1 什么是等值连接 4.2 抉择矩阵 4.3 使用 ...
- 内连接查询分为:交叉连接、相等连接、自然连接
一,内连接查询分为:交叉连接.相等连接.自然连接. 1.交叉连接又称为"笛卡尔连接"或"叉乘",它是所有类型的内连接的基础 语法:SELECT *FROM 表名 ...
- mysql左连接sql语句详解_SQL各种连接查询详解(左连接、右连接..)
一.交叉连接(cross join) 交叉连接(cross join):有两种,显式的和隐式的,不带on子句,返回的是两表的乘积,也叫笛卡尔积. 例如:下面的语句1和语句2的结果是相同的. 语句1:隐 ...
- SQL——左连接(Left join)、右连接(Right join)、内连接(Inner join)
文章目录 前言 一.概念 二.例子 总结 前言 最近在做SQL相关的练习,发现以前那么自信的SQL放久了不碰也变得棘手起来,特别是这一块表之间的内外连接.所以这篇是关于这个内外连接的整理. 一.概念 ...
- linq to entity 左联接 右连接 以及内连接写法的区别(转)
linq to entity 左连接 右连接 以及内连接写法的区别 还有就是用lambda表达式怎么写,那个效法效率高些? [解决办法] 左连右连还是内连这个其实你不需要关心.只需要根据实体的映射关 ...
- 数据库内、外、左、右连接详解
写在前面: 数据库连接操作非常重要,明确连接操作有助于更好地掌握SQL语句查询操作. 数据库连表方式: 内连接 :inner join 外连接 :outer join 左外连接 :left outer ...
最新文章
- Linux查看本机端口
- VSCode 小鸡汤 第00期 —— 安装和入门
- Hadoop详解(三):HDFS完全分布式环境搭建
- android实现过程,Android:一个完整app开发流程
- spark 流式计算_流式传输大数据:Storm,Spark和Samza
- ddos攻击工具_简单有效的ddos攻击防御方法
- awk -f 分隔符 命令_Linux awk命令详解(详解版)
- 银行家算法 计算机操作系统,计算机操作系统 银行家算法.doc
- 类中定义接口-匿名内部类
- PostgreSQL数据库学习手册之大对象
- 正睿OIday4总结
- 【图像分割】基于收缩系数的粒子群混合引力搜索算法多级图像阈值分割算法研究附matlab代码
- 微信的营销策略你了解多少?
- html 气泡动画效果,CSS 动画实现动态气泡背景的方法
- Android短视频开发
- 可以像微信钱包一样?2020年数字钱包技术重要的进化方向(上)
- linux LAMP的作用和现状,lamp简介
- 直播系统定制开发——海量用户实时消息系统架构演进实践
- [基因课学习笔记]一个简单的基因家族分析
- 【软件定义汽车】【架构篇】SOA面向服务的软件架构