数据库多表查询

多表查询:

SELECT *FROM stu_table,class WHERE stu_table.c_id=class.c_id;

多表查询——内连接

查询两张表交集部分。

隐式内连接:

#查询学生姓名,和班级名称,隐式调用
SELECT stu_table.s_name,class.c_name FROM stu_table,class WHERE stu_table.c_id=class.c_id;

显式内连接:

#查询学生姓名,年龄和班级名称,隐式调用
SELECT stu_table.s_name,stu_table.s_age,class.c_name FROM stu_table JOIN class ON stu_table.c_id=class.c_id;

多表查询——外连接

左外连接:相当于查询表1(左表)的所有数据,包含表1和表2交集部分的数据。

#查询学生所有信息,及班级,用左连接
SELECT stu_table.*,class.c_name FROM stu_table LEFT JOIN class ON stu_table.c_id=class.c_id;

右外连接:相当于查询表2(右表)的所有数据,包含表1和表2交集的部分数据。

#查询所有的班级信息,和班级对应的学生姓名,用右连接
SELECT class.*,stu_table.s_name FROM stu_table RIGHT JOIN class ON stu_table.c_id=class.c_id;

多表查询——联合查询(UNION、union all)

union:可以去重

把多次查询的结果合并起来,形成一个新的查询。

#查询年纪大于等于18的所有信息,和性别为男的所有信息
SELECT * FROM stu_table WHERE s_age>=18
UNION 
SELECT * FROM stu_table WHERE s_sex="男";

多表查询——子查询——标量子查询

#查询在一班的所有同学信息
SELECT c_id FROM class WHERE c_name="xg1901";SELECT * FROM stu_table WHERE c_id=(SELECT c_id FROM class WHERE c_name="xg1901");

 

多表查询——子查询——列子查询

#查询在一和三班的所有同学信息
SELECT c_id FROM class WHERE c_name="xg1901" OR c_name="xg1903";
SELECT *FROM stu_table WHERE c_id IN (1,3);SELECT * FROM stu_table WHERE c_id IN (SELECT c_id FROM class WHERE c_name="xg1901" OR c_name="xg1903");

多表查询——子查询——行子查询

常用操作符:=,<>,in ,not in

多表查询——子查询——表子查询 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/18212.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux管理文本文件002

今天简单和大家分享一些管理文本文件的指令 1、查看文件类型 file 1&#xff09;file /etc/passwd 文本文件 2&#xff09;File /dev/sda 块设备&#xff08;磁盘&#xff09; 3&#xff09;File /dev/tty 字符设备&#xff08;鼠标&#xff09; 4&#xff09;File /usr/…

力扣hot100学习记录(七)

240. 搜索二维矩阵 II 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性&#xff1a; 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 题意 在二维矩阵中搜索是否存在一个目标值&#xff0c;该矩阵每一行每一列都是升序…

谷歌推出TransformerFAM架构,以更低的消耗处理长序列文本

Transformer对大模型界的影响力不言而喻&#xff0c;ChatGPT、Sora、Stable Difusion等知名模型皆使用了该架构。 但有一个很明显的缺点&#xff0c;其注意力复杂度的二次方增长在处理书籍、PDF等超长文档时会显著增加算力负担。 虽然会通过滑动窗口注意力和稀疏注意力等技术…

行为型设计模式之观察者模式

文章目录 简介定义例子 原理代码例子小结 简介 定义 还是先来个定义吧&#xff0c;如下&#xff1a; 观察者模式(observer pattern)的原始定义是&#xff1a;定义对象之间的一对多依赖关系&#xff0c;这样当一个对象改变状态时&#xff0c;它的所有依赖项都会自动得到通知和…

亚马逊云科技峰会福利来啦

2024 亚马逊云科技中国峰会&#xff0c;挑战俱乐部 Hands On 动手实验课程正在直播中&#xff0c;点击链接畅享生成式AI建构之旅&#xff0c;赢心动好礼 &#xff08;直播链接Link&#xff09; 只看不过瘾&#xff1f;别急&#xff01;我们为您准备了【生成式AI助手 Amazon Q 初…

mybatis一对一,一对多,字段重复

1、一对一&#xff0c;association和javaType <resultMap type"com.example.ProdTask" id"ProdTaskMapWithDInvChkTask"><result property"taskCateg" column"ProdTask_CATEG" jdbcType"VARCHAR"/><result p…

手机视频恢复2个技巧:让您的视频资料重现生机

我们经常使用手机拍摄和保存各种视频资料&#xff0c;包括工作记录和日常生活的记忆。但有时候&#xff0c;由于误删、格式化或存储空间不足&#xff0c;我们会选择清理手机空间&#xff0c;这些视频资料可能会因此消失不见。今天&#xff0c;我们将为您揭秘手机视频恢复的技巧…

前端-TS代码解读—索引签名:type Recordable<T = any> = { [x: string]: T;}

在TypeScript中&#xff0c;这段代码定义了一个类型别名 Recordable&#xff0c;它使用了索引签名&#xff08;index signature&#xff09;来表示一个可记录&#xff08;record-like&#xff09;对象。这个类型别名是泛型的&#xff0c;这意味着它可以用于创建具有任意类型属性…

北斗卫星赋能水产养殖

北斗卫星赋能水产养殖&#xff1a;开启精准智能化新时代 天气稍有变化&#xff0c;浙江省江山市上余水产养殖场负责人就会通过手机APP实时查看鱼塘水体硝态氮、氨态氮、pH值、化学需氧量等水质参数&#xff0c;做到心中有数。这些数据由鱼塘内的巡航式底改机器人以及数字化监测…

S32K324 HSE固件加载配置及说明

文章目录 前言HSE固件HSE使用的空间FlashRamHSE的安装方式IVT结构ld文件UTEST区编程复位编译测试总结前言 本文介绍HSE固件的下载,及利用S32DS工程及PE工具安装。(本文只讨论对于full_men方式的HSE) HSE固件 注册NXP官网账号后,在S32K3 实时驱动(RTD)中

计算机视觉与深度学习实战:以Python为工具,基于帧间差法进行视频目标检测

一、引言 随着科技的飞速发展,计算机视觉和深度学习已成为当今科技领域的热门话题。它们不仅在科研领域取得了显著的成果,而且在安防监控、智能交通、医疗影像分析、工业自动化等领域得到了广泛的应用。本文旨在探讨计算机视觉与深度学习的实战应用,特别是以Python为工具,基…

Vue中使用Vue-scroll做表格使得在x轴滑动

页面效果 首先 npm i vuescroll 在main.js中挂载到全局 页面代码 <template><div class"app-container"><Header :titletitle gobackgoBack><template v-slot:icon><van-icon clickgoHome classicon namewap-home-o /></templat…

Python自动化测试中的Mock与单元测试实战

在软件开发过程中&#xff0c;自动化测试是确保代码质量和稳定性的关键一环。而Python作为一门灵活且强大的编程语言&#xff0c;提供了丰富的工具和库来支持自动化测试。本文将深入探讨如何结合Mock与单元测试&#xff0c;利用Python进行自动化测试&#xff0c;以提高代码的可…

Linux-线程池

文章目录 前言一、线程池是什么&#xff1f;二、示例代码 前言 线程池主要是对之前内容的一个巩固&#xff0c;并且初步了解池化概念。 一、线程池是什么&#xff1f; 线程池就是提前开辟好一块空间&#xff0c;随时准备创造新线程来完成任务&#xff0c;可以理解为用空间来换…

攻击同学网络,让同学断网

技术介绍&#xff1a;ARP欺骗 ARP欺骗&#xff08;ARP spoofing&#xff09;是一种网络攻击技术&#xff0c;它通过伪造ARP&#xff08;地址解析协议&#xff09;响应包来欺骗目标设备&#xff0c;使其将网络流量发送到攻击者指定的位置。具体操作步骤如下&#xff1a; 攻击者…

win/mac 崩溃内存泄漏问题分析

内存泄露排查 mac: xcode自带工具 参考 leak AddressSanitize windows: vld dmp排查 windows dmp 安装 WinDbg - Windows drivers | Microsoft Learn 本地或者远端均可用vs排查 mac dmp 本地查看控制层生成的.crash文件 远端的使用google breakpad client工具解析minidu…

C#--Mapster(高性能映射)用法

1.Nuget安装Mapster包引用 2.界面XAML部分 <Window x:Class"WpfApp35.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d"http://schemas.m…

buffer 越大传输效率越低

在计算机科学和网络通信中&#xff0c;Buffer&#xff08;缓冲区&#xff09;扮演着至关重要的角色。然而&#xff0c;关于Buffer的大小与传输效率之间的关系&#xff0c;往往存在一个普遍的误解&#xff0c;即认为Buffer越大&#xff0c;传输效率就越高。事实上&#xff0c;过…

JQuery 入门

一、jQuery 概述 1、JavaScript 库 仓库:可以把很多东西放到这个仓库里面。找东西只需要到仓库里面查找就可以 JavaScript 库&#xff1a;即library&#xff0c;是一个封装好的特定的集合&#xff08;方法和函数&#xff09;。从封装一大堆函数的角度理解库&#xff0c;就是在…

零基础学Java第二十五天之Lambda表达式

Lambda表达式 简介 Lambda是一个匿名函数(方法)&#xff0c; 允许把函数作为一个方法的参数 。利用Lambda表达式可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格&#xff0c;使Java的语言表达能力得到了提升。一般都是优化匿名内部类 基础语法 无参数、无返回值的抽…