当前位置: 首页 > ds >正文

MySQL----高级查询

目录标题

      • ⭐**多表查询的格式**
      • ⭐**查询前说明**
      • 一.**使用内连接**`inner join`**进行多表查询**
        • **1.介绍**
        • **2.事例**
      • 二.**使用外连接**`outer join`**进行多表查询**
        • 1.**介绍**

多表查询的格式

  • 其一
select *|字段列表
from1[查询类型] join 表名2 on 连接条件
[ [查询类型] join 表名3 on 连接条件 ]
[……]
[ where 查询条件 ]
[ order by 字段名 [ascdesc] ]
[……;]
  • 其二
  select *|字段列表from1,2[,3,……]where 连接条件 and 查询条件
[ order by 字段名 [ascdesc] ]
[……;]

查询前说明

  • ①为了区分多张表中,出现的 重复字段名,可以使用 表名.字段名 的形式,星号(*) 表示 多张表 的所有字段,如果指定 某一张表 中的所有字段,可以使用 表名.* 的形式

  • ②连接类型主要包括 内链接(inner), 左外链接(left outer), 右外链接(right outer)

一.使用内连接inner join进行多表查询

1.介绍

内链接 (inner join) 是最常用的查询形式

内连接是指 多个表 通过连接条件中 共享列的值 进行的比较连接,inner 关键字可以省略

⭐当 未指明 连接类型时,默认为 内链接

显示连接的表中 所有匹配数据的行

2.事例
  • 查询所有女生的学号,姓名,性别,课程ID和成绩student表与score表)
select ……
from student
inner join score on student.id = score.sId
where sex = '女'
order by score desc;
  • 方式二
select ……
from student,score
where student.id = score.sId and sex ='女';
  • 查询 学号(sNo)为 13452830 学生的学号,姓名,性别,班级student表中)
    课程名course表中)
    成绩score表中)
select ……
from student
inner join score on student.id = score.sId
inner join course on course.id = score.cId
where sNo in ('13452830');
  • 要点
    再超过两个表之间联立时,要注意
    查询的条件 要在 表被声明后 才可应用

二.使用外连接outer join进行多表查询

1.介绍

外连接主要又分为 左外连接右外连接 介绍如下

  • 左外连接 (left outer join)
    (左表为主表)
    对于来自左表 (写在此关键字左边的表) 的行,如果 右表 (写在此关键字右边的表) 没有发现匹配的行,那么来自 右表 的数据,在此位置将显示 null 值,outer 关键字 可以省略

  • 右外连接 (left outer join)
    (右表为主表)
    对于来自右表 (写在此关键字右边的表) 的行,如果 左表 (写在此关键字左边的表) 没有发现匹配的行,那么来自 左表 的数据,在此位置将显示 null 值,outer 关键字 可以省略

http://www.xdnf.cn/news/5567.html

相关文章:

  • 【PDF】使用Adobe Acrobat dc添加水印和加密
  • Linux服务器常用运维工具/命令
  • 网络调优的策略有哪些
  • 实战项目1(02)
  • 拍电影为什么常用绿幕?认识色度键控(Chroma Key)技术
  • MCP在游戏开发中的应用:从模型预测到智能决策
  • 软考 系统架构设计师系列知识点之杂项集萃(56)
  • 第八讲 | stack和queue的使用及其模拟实现
  • MySQL数据库迁移SQL语句指南
  • 数组的常用方法
  • LeetCode 1550.存在连续三个奇数的数组:遍历
  • Scrapyd 详解:分布式爬虫部署与管理利器
  • RabbitMQ概念详解
  • 文件(分片)并行上传时计算总的上传进度
  • 如何在Unity中进行四舍五入
  • Apache Ranger 2.2.0 编译
  • 华为云Flexus+DeepSeek征文|DeepSeek-V3/R1商用服务开通教程以及模型体验
  • TSN网络与DIOS融合:破解煤矿井下电力系统越级跳闸难题
  • Python-MCPInspector调试
  • STC-ISP烧录过程中显示“正在检测目标单片机...”
  • 基于Flask、Bootstrap及深度学习的水库智能监测分析平台
  • 闲鱼智能客服机器人-实现闲鱼平台7×24小时自动化值守
  • # 2-STM32-复位和时钟控制RCC
  • MySql(基础)
  • spark:map 和 flatMap 的区别(Scala)
  • CentOS7离线安装Mysql8
  • 分治算法
  • K8S cgroups详解
  • 【Bluedroid】蓝牙HID DEVICE断开连接流程源码分析
  • 【android bluetooth 框架分析 02】【Module详解 5】【HciLayer 模块介绍】