MySQL之多表查询—行子查询

一、引言

上篇博客学习了列子查询。


接下来学习子查询中的第三种——行子查询。

  • 行子查询

1、概念

子查询返回的结果是一行(当然可以是多列),这种子查询称为行子查询。

2、常用的操作符

= <> (不等于) 、IN NOT IN

接下来通过一个需求去演示和学习行子查询的用法。

二、实操

打开图形可视化工具:DataGrip 进行操作。

(0)员工表 emp ,部门表 dept 。

emp

dept

(1)查询与 “ 张无忌 ” 的薪资及直属领导相同的员工信息。

1、分析(拆解需求)

先查询张无忌的薪资和直属领导,再查询满足需求的人

如果是两个SQL语句,分开查询

第一步

SELECT salary,managerid FROM emp WHERE name='张无忌';

第二步

SELECT * FROM emp WHERE salary=12500 AND managerid=1;

2、实操

下面展示新的写法(合并成一条SQL语句进行查询)

SELECT * FROM emp WHERE (salary,managerid) = (SELECT salary,managerid FROM emp WHERE name='张无忌');


把 WHERE 后面跟的字段用括号就可以是字段列表了,然后用操作符 "=" 来与子查询相等。

因为内部子查询返回结果就是一个一行多列的(行子查询),刚好和前面两个字段匹配。

这种案例就是关于行子查询,因为子查询返回的结果是一行多列

这篇博客的学习就到这了。

相关推荐

最近更新

  1. 自动化喷涂生产线控制方法概述

    2024-06-10 06:24:04       0 阅读
  2. Leetcode.2709 最大公约数遍历

    2024-06-10 06:24:04       0 阅读
  3. 常用的设计模式

    2024-06-10 06:24:04       0 阅读
  4. 服务器添加TLS域名证书核子之PKCS编解码

    2024-06-10 06:24:04       0 阅读
  5. WDF驱动开发-I/O请求的处理(四)

    2024-06-10 06:24:04       0 阅读
  6. Flask-RQ

    2024-06-10 06:24:04       0 阅读
  7. 《 Python趣味编程 | 从入门到就业》专栏介绍

    2024-06-10 06:24:04       0 阅读
  8. SpaTracker&CoTracker 环境配置

    2024-06-10 06:24:04       0 阅读
  9. oracle中使用临时表GLOBAL TEMPORARY TABLE

    2024-06-10 06:24:04       0 阅读

热门阅读

  1. Docker面试整理-Docker Swarm与Kubernetes有什么区别?

    2024-06-10 06:24:04       6 阅读
  2. EF Core Model-First

    2024-06-10 06:24:04       5 阅读
  3. SOA的设计模式_1.服务注册表模式

    2024-06-10 06:24:04       4 阅读
  4. 209. 长度最小的子数组

    2024-06-10 06:24:04       5 阅读
  5. 主从式光伏并网发电系统体系结构

    2024-06-10 06:24:04       5 阅读
  6. ICESat-2 ATL08 数据批量读取

    2024-06-10 06:24:04       6 阅读
  7. 发布自己的 npm 插件包:步骤与最佳实践

    2024-06-10 06:24:04       4 阅读