【MySQL】子查询详解

本文详细介绍了MySQL中的子查询,包括子查询的概念、基本使用、单行子查询、多行子查询、相关子查询以及使用EXISTS和NOT EXISTS的关键字。内容涵盖了子查询的语法结构、比较操作符、空值问题、相关更新和删除,还提供了多个实例来解释子查询的运用。
摘要由CSDN通过智能技术生成

文章目录


0.概念

子查询:一个查询语句嵌套在另一个查询语句内部


1.需求分析与问题解决

1.1提出具体问题:

请添加图片描述

# 法一:效率低
SELECT last_name,salary
FROM employees
WHERE last_name = 'ABEL'
SELECT last_name,salary
FROM employees
WHERE salary > 11000;

#法二:自连接
SELECT e2.last_name,e2.salary
FROM employees e1,employees e2
WHERE e2.`salary` > e1.`salary`
AND e1.`last_name` = 'Abel';

#法三:子查询
SELECT last_name,salary
FROM employees
WHERE salary > (
		SELECT salary
		FROM employees
		WHERE last_name = 'ABEL'
               );


# 称谓的规范:外查询(主查询),内查询(子查询)

1.2 子查询的基本使用:

子查询的基本语法结构:

请添加图片描述

子查询(内查询)在主查询之前一次执行完成。
子查询的结果被主查询(外查询)使用 。

注意事项

  • 子查询要包含在括号内
  • 将子查询放在比较条件的右侧
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值