目录
一、内连接
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之分组查询 |