子查询之一(单行子查询, 多行子查询)

news2024/11/17 11:47:28

1. 子查询

子查询是指一个查询语句嵌套在另一个查询语句内部的查询.这个特性在MySQL4.1开始引入.

SQL中子查询的使用大大增强了SELECT查询的能力.因为很多时候查询需要从结果集中获取数据,或者需要从同一个表中先计算得到一个数据结果,然后与这个数据结果进行比较.

2. 子查询的基本使用

例 : 

dcade887bbef422796397c322ddb4e64.png

注 : 

  • 子查询在主查询之前一次执行完成.
  • 子查询的结果被主查询使用.
  • 子查询在包含在括号内.
  • 将子查询放在比较条件的右侧.
  • 单行操作符对应单行子查询,多行操作符对应多行子查询.

3. 子查询的分类

(1). 方式1 : 

我们可以按照子查询的结果返回一条还是多条记录,分为单行子查询和多行子查询.

(2). 方式2 : 

我们按照子查询是否被执行多次,是否依赖于主查询,将子查询分为相关子查询和不相关子查询.

  • 子查询从数据表中查询到了数据结果,如果这个数据结果只执行了一次,然后这个数据作为主查询的条件执行,则这样的子查询叫作不相关子查询.比如上述的图片.
  • 如果子查询需要执行多次,即采用循环的方式,先从外部查询开始,每次都传入子查询进行查询,再将结果反馈给外部,这种嵌套的执行方式称为相关子查询.

4. 单行子查询

(1). 单行子查询的操作符

=   >   >=   <   <=  <>

(2). 例

ba72e76d61944fdd93f601f9cba3a8d6.png

注 : 

  • 单行子查询,只返回一条记录,并作为主查询的条件进行比较.
  • 使用了单行比较操作符>.
  • 不相关子查询,数据结果仅执行一次.且查询结果不依赖于主查询.

(3). 子查询中的空值问题

e13c2d22778c4946aa842d94ed316778.png

注 : 

  • 子查询查询到的结果为null.由于单行子查询运算符遇到null运算的结果都为null.所以查询不到任何记录.

(4). 非法使用子查询

例 : 

c817b93bb2544982aa5aed1667dc5dc0.png

注 : 

  • 由于该子查询查到多行记录,而主查询条件中使用单行比较操作符,所以会报错.

5. 多行子查询

(1). 概念

  • 也称为集合比较子查询
  • 子查询返回多行.
  • 使用多行比较操作符.

(2). 多行比较操作符

IN : 等于列表中的任意一个.

ANY : 需要和单行操作符一起使用,和子查询返回的某一个值比较.

ALL : 需要和单行操作符一起使用,和子查询返回的所有值进行比较.

SOME : 实际上是ANY的别名,作用相同,一般使用ANY.

(3). 例

(4). 空值问题

db82a4042c674f27a98dcb2206d5fc3d.png

注 : 

  • 如果子查询返回的结果集中有null,且在主查询的条件中使用多行比较操作符时,也将返回null.所以查询不到任何记录.

 

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

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

相关文章

基于51单片机锅炉水位-温度-压力检测控制系统proteus仿真设计

基于51单片机锅炉监控系统仿真设计( proteus仿真程序原理图报告讲解视频&#xff09; 仿真图proteus7.8及以上 程序编译器&#xff1a;keil 4/keil 5 编程语言&#xff1a;C语言 设计编号&#xff1a;S0056 1.主要功能&#xff1a; 基于51单片机AT89C51/52&#xff08;与…

ESP-WROOM-32配置Arduino IDE开发环境

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、下载Arduino IDE二、安装工具集三、测试样例1.选则开发板2.连接开发板3.示例程序 四、使用官方示例程序总结 前言 之前用了很多注入STM32、树莓派Pico和Ar…

车载测试系列:车载测试流程

车载测试流程是保证软件质量的重要支撑&#xff0c;优秀的团队都必须拥有规范的流程体系支撑&#xff0c;它能够约束测试人员的测试行为&#xff0c;约束测试环境的测试精度&#xff0c;提升测试的覆盖度&#xff0c;保证团队成员工作的协调性。 该测试流程建立的依据&#xf…

三.Django--ORM(操作数据库)

目录 1 什么是ORM 1.1 ORM优势 1.2ORM 劣势 1.3 ORM与数据库的关系 2 ORM 2.1 作用 2.2 连接数据库 2.3 表操作--设置字段 2.4 数据库的迁移 写路由增删改查操作 项目里的urls.py: app里的views.py: 注意点: 1 什么是ORM ORM中文---对象-关系映射 在MTV,MVC设计…

每日Attention学习3——Cross-level Feature Fusion

模块出处 [link] [code] [PR 23] Cross-level Feature Aggregation Network for Polyp Segmentation 模块名称 Cross-level Feature Fusion (CFF) 模块作用 双级特征融合 模块结构 模块代码 import torch import torch.nn as nnclass BasicConv2d(nn.Module):def __init__(…

day1_slidingWindow

一、滑动窗口模板 // 注意&#xff1a;java 代码由 chatGPT&#x1f916; 根据我的 cpp 代码翻译&#xff0c;旨在帮助不同背景的读者理解算法逻辑。 // 本代码不保证正确性&#xff0c;仅供参考。如有疑惑&#xff0c;可以参照我写的 cpp 代码对比查看。import java.util.Has…

Mac YOLO V9推理测试

环境&#xff1a; Mac M1 (MacOS Sonoma 14.3.1) Python 3.11PyTorch 2.1.2 一、准备工作 工程及模型下载&#xff1a;​​​​​​​https://github.com/WongKinYiu/yolov9 git clone https://github.com/WongKinYiu/yolov9.git 克隆后安装相关依赖&#xff08;没啥依赖好装…

轮廓提取、矩形标记时,点的位置需要重标

在下图中的0&#xff0c;3&#xff0c;1&#xff0c;2位置如何变换成0&#xff0c;1&#xff0c;2&#xff0c;3 先显示结果&#xff1a; 变换之后图&#xff1a; 这边提供两种解决方案&#xff1a; 第一种&#xff1a;将坐标值相加求和&#xff0c;采用冒泡排序实现从小到大…

基于51单片机可调幅度频率波形信号发生器

基于51单片机可调幅度频率信号发生器( proteus仿真程序原理图报告讲解视频&#xff09; 1.主要功能&#xff1a; 基于51单片机的三角波信号发生器 1、幅值在0-5V可以通过按键调整&#xff0c;频率在0-50Hz,可以通过按键调整 2、通过LCD1602显示幅值和频率 3、使用示波器查…

postman介绍、安装、使用、功能特点、注意事项

Postman是一款流行的API开发工具&#xff0c;它提供了丰富的功能&#xff0c;包括创建、测试、调试和文档化API。本文将介绍Postman的安装、使用方法&#xff0c;以及其功能特点和注意事项。 1. 介绍 Postman是一款用于构建、测试和调试API的工具&#xff0c;它提供了用户友好的…

2. Linux 基本指令(上)|ls|pwd|cd|tree|touch|mkdir|rmdir|rm

前言 计算机软硬件体系结构 层状结构应用软件Word&#xff0c;Matlab操作系统Windows&#xff0c;Linux设备驱动声卡驱动硬件CPU&#xff0c;内存&#xff0c;磁盘&#xff0c;显示器&#xff0c;键盘 操作系统概念 操作系统 是一款进行软硬件资源管理的软件 例子 比如在学…

Q1保健品线上市场分析(三):牛初乳市场扩张,同比去年增长54%

近几年&#xff0c;牛初乳在多项科学研究支撑下&#xff0c;其卓越的“肠道免疫力”正得到越来越多的挖掘、验证和商业化尝试。因此&#xff0c;随着人们对健康饮食的重视&#xff0c;牛初乳产品的需求量也在逐年增加&#xff0c;市场潜力巨大。 根据鲸参谋数据显示&#xff0…

AI 资料汇总专栏

包含AI资料、大模型资料、AI最新行业发展 人工智能&#xff08;Artificial Intelligence&#xff0c;简称AI&#xff09;是一门研究如何使计算机能够具备智能行为的科学与技术。它致力于开发出能够像人类一样思考、学习、理解和决策的计算机系统。自20世纪50年代以来&#xff…

C语言leetcode刷题笔记2

C语言leetcode刷题笔记2 第4题&#xff1a;283.移动零互换直接移动 第5题&#xff1a;122.买卖股票的最佳时机‖递归&#xff08;超时&#xff09;动态规划贪心算法 第6题&#xff1a;49.字母异位词分组优化 第4题&#xff1a;283.移动零 给定一个数组 nums&#xff0c;编写一…

100G ZR4 80KM光模块产品亮点有哪些

之前的文章我们介绍了100G ZR4 80KM光模块的产品特征以及技术原理等&#xff0c;那本期文章我们来了解一下易天第二代100G ZR4 80KM光模块的产品亮点。 首先我们通过下面这张表格以最直观的方式来了解第一代和第二代100G ZR4 80KM光模块在工作温度、功耗、FEC纠错等方面有哪些…

哪个可以下载视频素材?哪里有视频素材网站啊?

在这个视频内容日益重要的世界里&#xff0c;选择正确的可商用素材网站可以极大提升您的项目质量。下面是另一批国内外知名的视频素材网站&#xff0c;希望能为您的创作提供新的灵感。 1. 蛙学府 提供广泛的创意资产&#xff0c;包括高分辨率的视频素材。订阅后用户可无限次下…

VIsualGDB : 快速入门系列

《VisualGDB &#xff1a; 解决编码导致的编译错误》 《VisualGDB &#xff1a; 在windows上开发和调试Linux代码&#xff08;一&#xff09;》 《VisualGDB&#xff1a;为Linux项目添加系统依赖库》 《VisualGDB&#xff1a;Linux动态库项目创建、编译及库的使用》 《VisualGD…

点击导航栏选项后,导航栏高亮该选项

如图所示&#xff0c;点击“流浪猫客栈”时&#xff0c;会一直高亮显示&#xff0c;表示现在看的是这个选项的页面。 Cat.jsp上写&#xff1a; <!--header--> <jsp:include page"header.jsp"><jsp:param name"flag" value"3">…

中国科技大航海时代,“掘金”一带一路

文&#xff5c;白 鸽 编&#xff5c;王一粟 “这不就是90年代的内地吗&#xff1f;” 在深度考察完沙特市场后&#xff0c;华盛集团联合创始人兼CEO张霆对镜相工作室感慨道。 在张霆看来&#xff0c;沙特落后的基建&#xff08;意味着大量创新空间&#xff09;、刚刚开放…

邮件系统国产化,保障企业信息安全的重要举措

随着信息技术日益发展和成熟&#xff0c;企业信息化建设深入推进&#xff0c;企业信息化管理能力大幅提升&#xff0c;其中邮件系统在企业信息化建设中扮演着至关重要的角色。然而&#xff0c;长期以来&#xff0c;我国企业在邮件系统方面主要依赖于国外的产品&#xff0c;这不…