SQL99版外连接

embedded/2024/11/23 13:15:47/

外连接

看这样的场景,在ta和tb两表中查询没有对应年龄数据的学生姓名和年龄

SELECT
tb.`name`,ta.`age`
FROM
tb
INNER JOIN
ta
ON
tb.`ta_id`=ta.`id`
WHERE
ta.`id` IS NULL;

结果没有,所以前面的查询是解决不了这种问题!!!

所以外连接主要就是解决这种情况,一边有数据对应的另一张表中没有数据!

外连接语法

select 查询列表
from 表1 别名
【链接类型】 join 表2 别名
on 链接条件
where 数据筛选条件 .....以前讲过的其他部分;
链接类型:
左外连接 left 【outer】
右外连接 right 【outer】
全外连接 full 【outer】

掌握外连接知识点

1.外连接的查询结果为主表中有的所有记录

外表有对应数据,结果记录上显示对应数据

外表中没有对应的数据,结果记录上填充null

和内连接的区别

内连接:当从表没有记录的时候,主、从表的记录都丢掉!

外连接:当从表没有记录的时候,会保留主表的记录,对应从表null

2.左外连接:left join左边的是主表,右外连接right join 右边的是主表

3.左外连接和右外连接上互通的所以掌握一个就好

解决

在ta和tb两表中查询没有对应年龄数据的学生姓名和年龄

SELECT
tb.`name`,ta.`age`
FROM
tb
LEFT JOIN
ta
ON
tb.`ta_id`=ta.`id`
WHERE
ta.`id` IS NULL;
案例

查询没有员工的部门

SELECT d.`department_id`,d.`department_name`,e.`employee_id`
FROM `departments` d
LEFT JOIN `employees` e
ON d.`department_id`=e.`department_id`
WHERE e.`employee_id` IS NULL;


http://www.ppmy.cn/embedded/139857.html

相关文章

如何使用ChatGPT整理和收集论文实验数据?

学境思源,一键生成论文初稿: AcademicIdeas - 学境思源AI论文写作 使用ChatGPT整理和收集论文实验数据,需要通过一些具体的方法和提示词。以下几个步骤和技巧,告诉你如何借助ChatGPT更好地完成工作: 1. 数据格式化和…

MySQL高级SQL技巧:提升数据库性能与效率

引言 SQL作为数据库的灵魂,其灵活性和强大之处毋庸置疑。然而,要写出高效、可读性强的SQL语句,需要掌握一些高级技巧。本文将深入探讨MySQL的高级SQL技巧,旨在帮助开发者写出更优化的SQL语句,提升数据库性能。 索引优…

unity运行状态下移动、旋转、缩放控制模型

demo地址:https://download.csdn.net/download/elineSea/90017272 unity2021以上版本用下面的插件 https://download.csdn.net/download/elineSea/90017305

C语言基础学习:抽象数据类型(ADT)

基础概念 抽象数据类型(ADT)是一种数据类型,它定义了一组数据以及可以在这组数据上执行的操作,但隐藏了数据的具体存储方式和实现细节。在C语言中,抽象数据类型(ADT)是一种非常重要的概念&…

重学 Android 自定义 View 系列(七):仿58同城加载动画

前言 本文将实现早期58同城一个带有弹跳效果的加载动画,且结合图形变换(圆形变正方形、正方形变三角形等)实现一种动态、富有表现力的加载效果。 最终效果如下: 1. 效果分析 形状切换: 显示一个不断变化的形状&…

机器学习基础07

目录 1.逻辑回归 1.1原理 1.2API 2.K-Means 2.1算法过程 2.2API 3.SVM(支持向量机) 3.1算法原理​ 3.2API 1.逻辑回归 逻辑回归(Logistic Regression)是机器学习中的一种分类模型,逻辑回归是一种分类算法。 1.1原理 逻辑回归的输…

uniapp H5上传图片前压缩

问题:需要在上传图片前压缩图片,但是uni.compressImage()不支持h5 解决方法:使用canvas降低图片质量 核心代码: // 创建一个 img 元素来加载图片const img new Image()img.src imagePath// 创建 canvas…

自动驾驶之激光雷达

这里写目录标题 1 什么是激光雷达2 激光雷达的关键参数3 激光雷达种类4 自动驾驶感知传感器5 激光雷达感知框架5.1 pointcloud_preprocess5.2 pointcloud_map_based_roi5.3 pointcloud_ground_detection5.4 lidar_detection5.5 lidar_detection_filter5.6 lidar_tracking 1 什么…