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

MySQL子查询介绍和where后的标量子查询

子查询介绍

出现在其他语句中的select语句,被包裹的select语句就是子查询或内查询

包裹子查询的外部的查询语句:称主查询语句

select last_name from employees
where department_id in(
select department_id from departments
where location_id=1700
);

子查询分类

通过位置来分

select 后面:仅仅支持标量子查询

from 后面:支持表子查询

where 或having 后面:支持标量子查询(重要)\列子查询(重要)\行子查询(用的较少)

exists 后面(相关查询):支持表子查询

按结果集的行列数不同分类

标量子查询(结果集只有一行一列)

列子查询(结果集只有一列但有多行)

行子查询(结果集只有一行但有多列)

表子查询(结果集多行多列)

子查询特点

子查询放在小括号内

子查询一般放在条件的右侧

标量子查询,一般搭配着单行操作符来使用(> < >= =)

列子查询,一般搭配着多行操作符使用:in any/some all

子查询的执行顺序优先于主查询(select后的子查询存在例外)

案例

1.where后面的标量子查询

案例:查询工资比Abel这个人的高的员工信息

select * from employees
where salary>(
select
salary
from employees
where last_name='Abel'
);

2.查询job_id与141号员工相同,salary比143号员工多的员工姓名,job_id和工资

select last_name,job_id,salary
from employees
where job_id=(select job_id from employees
where employee_id=142 ) and salary>(select salary
from employees where employee_id=143);
(这个案例说明一个主查询里可以放很多个子查询)

3.子查询里用到分组函数:查询公司工资最少的员工的last_name,job_id和salary

select last_name,job_id,salary from employees
where salary=(select min(salary) from employees);

4.用到having的子查询:查询最低工资大于50号部门最低工资的部门id和其最低工资

select department_id , min(salary) from employees
group by department_id
having min(salary)>(select min(salary) from employees where department_id=50);

http://www.kler.cn/a/413724.html

相关文章:

  • Neo4j图形数据库-Cypher中常用指令
  • 【大数据学习 | Spark-SQL】SparkSQL读写数据
  • 英伟达推出了全新的小型语言模型家族——Hymba 1.5B
  • Pytorch使用手册-Build the Neural Network(专题五)
  • 解决SpringBoot连接Websocket报:请求路径 404 No static resource websocket.
  • VITE+VUE3+TS环境搭建
  • yarn 任务 beyond the ‘PHYSICAL‘ memory limit 报错处理
  • 半导体、晶体管、集成电路、芯片、CPU、单片机、单片机最小系统、单片机开发板-概念串联辨析
  • 【网络安全设备系列】12、态势感知
  • Z2400023基于Java+Servlet+jsp+mysql的酒店管理系统的设计与实现 源码 调试 文档
  • 在Manjaro Gnome桌面的基础上安装Budgie桌面环境
  • 【入门篇】小游戏——多语言求解版
  • 希尔排序:一个“跳房子游戏”
  • 前端新手教程:HTML、CSS 和 JavaScript 全面详解及实用案例
  • 大数据新视界 -- Hive 数据分区:精细化管理的艺术与实践(上)(7/ 30)
  • 如何在 Ubuntu 22.04 上安装 Metabase 数据可视化分析工具
  • ssm194线上学习网站+vue(论文+源码)_kaic
  • 词云图大师(WordCloudMaster): 探索创意无限的词云世界!
  • Panzerdogs 游戏宣布将在 SuiPlay0X1 上线
  • 算法定制LiteAIServer视频智能分析平台未戴口罩检测算法在餐饮监控领域的应用
  • 1panel专业版防火墙自定义规则使用记录
  • [jupyter运行报错] AssertionError: Torch not compiled with CUDA enabled
  • Oracle RMAN异机迁移恢复
  • C++设计模式:桥接模式(Bridge)
  • Flume 与 Kafka 整合实战
  • IDEA配置本地maven