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

SQL子查询实战:相关子查询vs非相关子查询,用法解析

前言

子查询是SQL进阶的核心,简单说就是SQL中嵌套SQL。日常开发中,复杂筛选、批量匹配、嵌套统计都需要用到子查询。

很多新手只会写简单子查询,分不清相关子查询非相关子查询的区别,不知道什么时候用哪种,导致代码冗余、性能低下。


一、子查询基础概念

外层SQL:父查询;括号内嵌套的SQL:子查询。

分类核心依据:子查询是否依赖父查询的字段

不依赖 = 非相关子查询(独立执行);依赖 = 相关子查询(逐行执行)。


二、非相关子查询(独立子查询)

核心特点

子查询完全独立,不引用父查询的任何字段,只会执行一次,执行效率高。

常用场景

固定条件筛选、批量匹配、获取统计值、IN / EXISTS 固定值匹配。

实战案例

-- 案例:查询有订单的所有用户(非相关子查询) SELECT * FROM user WHERE id IN (SELECT DISTINCT user_id FROM `order`);

解析:子查询单独执行,查询出所有有订单的用户ID,再给父查询筛选,子查询只执行1次。


三、相关子查询(关联子查询)

核心特点

子查询依赖父查询字段,无法独立运行,会随着父查询的每一行数据逐行循环执行,数据量大时性能较差。

常用场景

逐行匹配统计、单行数据校验、复杂行级筛选。

实战案例

-- 案例:查询每个用户的订单数量大于0的用户 SELECT * FROM user u WHERE EXISTS ( SELECT 1 FROM `order` o WHERE o.user_id = u.id );

解析:子查询引用了父查询的 u.id 字段,依赖父查询,父查询每遍历一行,子查询执行一次。


四、两种子查询核心区别对比

对比维度

非相关子查询

相关子查询

执行依赖

独立执行,不依赖父查询

依赖父查询字段,无法独立运行

执行次数

仅执行1次

父查询多少行,执行多少次

执行性能

高,推荐优先使用

低,大数据量慎用


五、子查询开发规范与优化

1、优先使用非相关子查询,尽量避免循环执行的相关子查询;

2、大数据量场景,相关子查询可改写为 LEFT JOIN 关联查询,大幅提升性能;

3、子查询尽量返回固定字段,禁止 SELECT *,减少数据传输开销。

http://www.jsqmd.com/news/1193834/

相关文章:

  • 佛山百达翡丽中国官方售后服务门店 | 官方网站权威公示(2026 年 7 月最新) - 百达翡丽售后服务官网
  • 5分钟掌握Palworld存档转换工具:轻松编辑你的幻兽帕鲁游戏数据
  • 三步实现Windows与Office高效激活:KMS_VL_ALL_AIO智能脚本完全指南
  • Python零基础入门:从环境配置到简单爬虫实战指南
  • HoRain云--Hermes Agent 记忆系统
  • SIP稳定性决定AI体验?2026年呼叫中心系统与400电话硬核技术选型框架
  • 视频怎么压缩哪个好免费工具与无损方法实测 - 优企甄选
  • 2026年数字人AI公司选型指南:帮企业筛选高性价比靠谱服务商
  • 武汉百达翡丽中国官方售后服务网络全攻略 | 官方网站权威认证(2026 年 7 月最新) - 百达翡丽售后服务官网
  • 炉石传说脚本:重新定义游戏效率的革命性开源工具
  • 车载网络技术演进与标准全景解析:从经典总线到高速以太网
  • 苏州百达翡丽中国区官方售后服务网点 | 官方服务地址及客服热线权威公布(2026 年 7 月最新) - 百达翡丽售后服务官网
  • 阜阳2026年宣传片制作机构年度权威排名|专业视频制作公司多维度深度评测一站式广告片剪辑包装拍摄报价选择指南深度解析 - 全国影像制作行业测评
  • 三分钟彻底解决Windows和Office激活难题的智能神器
  • Kuzushiji数据集未来路线图:新版本发布计划与功能展望
  • 【ChatGPT用户评价分析实战手册】:3大高精度情感识别模型+5步清洗法,助你72小时内产出可信洞察
  • 如何在Windows上快速修复苹果设备连接问题:专业驱动解决方案终极指南
  • 福州浪琴中国官方售后服务网络全解析|官方网站权威认证(2026年7月最新) - 浪琴中国服务中心
  • G-Helper:告别臃肿控制中心,解锁华硕笔记本的纯净性能控制体验
  • 2026衡阳少儿美术培训哪家好 优选机构指南 - 谁都没有我好看
  • 九大网盘直链下载助手:免费解锁高速下载的全能解决方案
  • 【Cursor CSS动画生成终极指南】:20年前端专家亲授5大零代码动效技巧,3分钟搞定交互动画
  • GHelper终极指南:轻量化ROG性能优化工具完整实战手册
  • 快速恢复加密压缩包密码:ArchivePasswordTestTool终极指南
  • 医疗AI伦理落地指南:从听诊器移交到临床决策权保障
  • 免费拼图怎么弄手机电脑在线工具都不用下载 - 优企甄选
  • 辩论能力跃迁必备工具,ChatGPT模拟对手实测对比:准确率91.7%、逻辑连贯性超人类陪练
  • Prisma DBML Generator 开发者指南:自定义生成器与扩展功能的实现方法
  • 为什么你的微调数据总失效?ChatGPT生成示例的3层校验机制,上线前必须执行的48小时质检流程
  • 2026年图片转png免费方法:在线无水印与本地无广告工具都在这 - 优企甄选