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 *减少数据传输开销。

相关新闻

ChatGPT英语口语提升实战指南:5类高频场景对话模板+错误自检公式(附2024最新Prompt库)

ChatGPT英语口语提升实战指南:5类高频场景对话模板+错误自检公式(附2024最新Prompt库)

更多请点击: https://kaifayun.com 第一章:ChatGPT英语口语提升实战指南:5类高频场景对话模板错误自检公式(附2024最新Prompt库) ChatGPT 不仅是问答工具,更是沉浸式英语口语训练伙伴。关键在于构建可复用…

2026/7/15 12:58:11阅读更多 →
企业官网AI可读性优化指南:从结构到标记的完整思路

企业官网AI可读性优化指南:从结构到标记的完整思路

在AI搜索与对话式问答逐渐成为用户获取信息的重要途径之后,企业官网的角色已经悄然变化。它不再仅仅是一个展示品牌形象的“电子名片”,更成为了AI大模型在回答用户问题时优先调取的信源之一。因此,如何让官网内容被AI顺畅地理解、准确地引用…

2026/7/15 12:58:11阅读更多 →
5分钟实现Windows和Office永久激活:KMS智能激活实用指南

5分钟实现Windows和Office永久激活:KMS智能激活实用指南

5分钟实现Windows和Office永久激活:KMS智能激活实用指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为系统激活问题烦恼吗?KMS_VL_ALL_AIO智能激活脚本是你的终极…

2026/7/15 12:58:11阅读更多 →
仅限本周开放的增肌方案生成权限:ChatGPT专业版增肌模块首次对C端用户解禁(含IGF-1响应模拟算法)

仅限本周开放的增肌方案生成权限:ChatGPT专业版增肌模块首次对C端用户解禁(含IGF-1响应模拟算法)

更多请点击: https://intelliparadigm.com 第一章:仅限本周开放的增肌方案生成权限:ChatGPT专业版增肌模块首次对C端用户解禁(含IGF-1响应模拟算法) 本周起,ChatGPT专业版正式向个人用户开放其底层生物建模…

2026/7/15 14:19:01阅读更多 →
【万字文档+源码】小区停车管理系统-可用于毕设-课程设计-练手学习-学习资料分享

【万字文档+源码】小区停车管理系统-可用于毕设-课程设计-练手学习-学习资料分享

基于springbootvue小区停车管理系统一、项目概述 1.1 项目背景 现代住宅小区车辆保有量持续上涨,传统线下纸质登记、人工看管停车场模式存在诸多痛点:车位状态无法实时公示、车辆进出记录零散难以追溯、停车收费计算繁琐、业主咨询反馈无线上渠道、物业…

2026/7/15 14:19:01阅读更多 →
3步实现智能风扇控制:Windows平台高效散热管理实战指南

3步实现智能风扇控制:Windows平台高效散热管理实战指南

3步实现智能风扇控制:Windows平台高效散热管理实战指南 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/f…

2026/7/15 14:19:01阅读更多 →
3步彻底清理Mac残留文件:Pearcleaner开源清理工具终极指南

3步彻底清理Mac残留文件:Pearcleaner开源清理工具终极指南

3步彻底清理Mac残留文件:Pearcleaner开源清理工具终极指南 【免费下载链接】Pearcleaner A free, source-available and fair-code licensed mac app cleaner 项目地址: https://gitcode.com/gh_mirrors/pe/Pearcleaner 你的Mac电脑是否总是提示存储空间不足…

2026/7/15 14:19:01阅读更多 →
如何用react-native-root-siblings快速实现跨组件弹窗?零基础入门教程

如何用react-native-root-siblings快速实现跨组件弹窗?零基础入门教程

如何用react-native-root-siblings快速实现跨组件弹窗?零基础入门教程 【免费下载链接】react-native-root-siblings A sibling elements manager. 项目地址: https://gitcode.com/gh_mirrors/re/react-native-root-siblings React Native 开发中&#xff0c…

2026/7/15 14:19:01阅读更多 →
Gitea备份安全架构:构建企业级数据保护屏障

Gitea备份安全架构:构建企业级数据保护屏障

Gitea备份安全架构:构建企业级数据保护屏障 【免费下载链接】gitea Git with a cup of tea! Painless self-hosted all-in-one software development service, including Git hosting, code review, team collaboration, package registry and CI/CD 项目地址: ht…

2026/7/15 14:08:34阅读更多 →
VSCode TypeScript 环境配置对比:全局安装 vs 项目本地安装的4个关键差异

VSCode TypeScript 环境配置对比:全局安装 vs 项目本地安装的4个关键差异

VSCode TypeScript 环境配置对比:全局安装 vs 项目本地安装的4个关键差异当你在VSCode中启动一个新的TypeScript项目时,第一个技术决策往往从安装方式开始。这个看似简单的选择——全局安装还是项目本地安装——实际上会深刻影响你的开发流程、团队协作和…

2026/7/15 6:42:19阅读更多 →
智慧树刷课插件:5分钟实现自动化学习的智能助手

智慧树刷课插件:5分钟实现自动化学习的智能助手

智慧树刷课插件:5分钟实现自动化学习的智能助手 【免费下载链接】zhihuishu 智慧树刷课插件,自动播放下一集、1.5倍速度、无声 项目地址: https://gitcode.com/gh_mirrors/zh/zhihuishu 智慧树刷课插件是一款专为智慧树在线教育平台设计的Chrome浏…

2026/7/15 6:12:45阅读更多 →
Steam创意工坊下载器WorkshopDL:跨平台游戏模组获取的终极解决方案

Steam创意工坊下载器WorkshopDL:跨平台游戏模组获取的终极解决方案

Steam创意工坊下载器WorkshopDL:跨平台游戏模组获取的终极解决方案 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 你是否在GOG或Epic Games Store购买了心仪的游戏…

2026/7/15 10:54:00阅读更多 →
AI框架决定企业AI能走多远

AI框架决定企业AI能走多远

企业AI建设的第一性原理 企业搞AI,最关键的决定是什么?不是选哪家大模型,不是先做哪个场景,不是招多少AI人才——而是选哪个AI开发框架。 为什么?因为框架决定了企业AI能力的"天花板"。选对了框架&#xff0…

2026/7/15 0:01:30阅读更多 →
Java企业为什么需要AI框架

Java企业为什么需要AI框架

Java企业在AI时代的尴尬处境 Java是全球企业级应用开发的主流语言——全球超过一半的企业系统跑在Java上。但在AI浪潮面前,很多Java企业感到尴尬:大模型的接口是各种语言的,AI开发社区以其他语言为主流,似乎Java在AI时代"掉队…

2026/7/15 0:01:30阅读更多 →
CC3230x嵌入式开发实战:SD主机、定时器与低功耗模式深度解析

CC3230x嵌入式开发实战:SD主机、定时器与低功耗模式深度解析

1. 项目概述:为什么需要关注CC3230x的SD主机、定时器与低功耗?在物联网和嵌入式设备开发领域,我们常常面临一个核心矛盾:设备需要具备强大的连接能力、可靠的数据存储和实时控制功能,同时又必须严格控制功耗以延长电池…

2026/7/15 0:01:30阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/14 15:07:30阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/15 8:52:38阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/15 14:06:23阅读更多 →