leetcode 1270 向公司CEO汇报工作的所有人(postgresql)

需求

员工表:Employees

±--------------±--------+
| Column Name | Type |
±--------------±--------+
| employee_id | int |
| employee_name | varchar |
| manager_id | int |
±--------------±--------+
employee_id 是这个表的主键。
这个表中每一行中,employee_id 表示职工的 ID,employee_name 表示职工的名字,manager_id 表示该职工汇报工作的直线经理。
这个公司 CEO 是 employee_id = 1 的人。

用 SQL 查询出所有直接或间接向公司 CEO 汇报工作的职工的 employee_id 。

由于公司规模较小,经理之间的间接关系不超过 3 个经理。

可以以任何顺序返回无重复项的结果。

分析

在这里插入图片描述

输入

在这里插入图片描述

输出

with t1 as (
-- 直接向CEO汇报的人
select employee_id
from employees
where employee_id!=1 and manager_id=1
),t2 as(
-- 非直接向CEO汇报的人
select * from employees
where manager_id!=1
),t3 as (
-- 其上级领导向CEO汇报
select t2.employee_id
from t2,employees e1
where t2.manager_id=e1.employee_id
and e1.manager_id=1
),t4 as (
-- 上级领导也不向CEO汇报的人
select t2.employee_id,e1.manager_id
from t2,employees e1
where t2.manager_id=e1.employee_id
and e1.manager_id!=1
),t5 as (
-- 上上级领导向CEO汇报的人
select t4.employee_id
from t4,employees e2
where t4.manager_id=e2.employee_id
and e2.manager_id=1
)
-- 合并结果
select * from t1
union all
select * from t3
union all
select * from t5

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/18911.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

多个查询有同一个字段做关联,各个查询用临时表再用join 链接 拼接一个查询语句

查询自定日期活跃充值和总充值 TotalRecharge总金额字段 SELECT a.UserID, a.TotalRecharge, b.dayamount FROM ( SELECT i.UserID, a.TotalRecharge FROM qplogdb.user_inout_log_202405 AS i …

用于脑肿瘤分割的跨模态深度特征学习| 文献速递-深度学习肿瘤自动分割

Title 题目 Cross-modality deep feature learning for brain tumor segmentation 用于脑肿瘤分割的跨模态深度特征学习 01 文献速递介绍 作为最致命的流行病,脑肿瘤的研究越来越受到关注。本文研究了一种基于深度学习的自动分割胶质瘤的方法,称为脑…

utf8mb4_general_ci和utf8mb4_0900_ai_ci

utf8mb4_general_ci和utf8mb4_0900_ai_ci 在 MySQL 数据库中,字符集和排序规则(collation)决定了如何存储和比较字符串数据。utf8mb4 是 MySQL 中用于支持完整的 UTF-8 字符(包括表情符号和其他 4 字节字符)的一种字符…

筛斗数据:如何利用数据提取技术进行环境监测与预警

利用数据提取技术进行环境监测与预警,是现代环境管理中的一项重要手段。它通过高效地从多源数据中提取、分析关键信息,实现对环境状况的实时监测和潜在风险的早期预警。以下是几个具体步骤和方法,说明如何有效利用数据提取技术: …

raid 磁盘阵列

raid 磁盘阵列: **条带化存储:**数据分散在多个物理磁盘上的存储方式。利用多个磁盘并行读取和写入。 条带化的存储性能和读写性能是最好的。 磁盘的组成方式不同,也就是不同的raid级别: **raid 0(条带化存储&#x…

音视频开发_SDL入门

SDL是 “Simple DirectMedia Layer”的缩写,它是一个开源的项目。其主要用于游戏开发中的多媒体处理,如视频渲染,音频播放,鼠标/键盘控制等操作。 并且它是一个跨平台的多媒体库。也就是说它对外接供了一套统一的接口&#xff0c…

高级软件工程师带你解决MySQL死锁问题Deadlock found when trying to get lock实战案例全网唯一

高级软件工程师带你解决MySQL死锁问题Deadlock found when trying to get lock实战 前言 笔者我实际工作中,经常遇到mysql数据库死锁问题!CSDN上面也有很多大神刨析解决方法! 我在实际工作中的MySQL数据库架构很复杂,又涉及到主…

MT3045 松鼠接松果

思路: 求x的一个区间,使区间中的松果的最大y坐标和最小y坐标的差至少为D。若有多个区间,则取最小的那个。 即使用单调队列不断维护最大值和最小值。 首先L固定不动,R不断右移: 即若函数f(R)max[L,R]-min[L,R] >…

自建视频托管平台:MediaCMS

目录 1 MediaCMS简介1.1 介绍1.2 特性1.3 应用场景 2 安装配置2.1 安装1、安装2、汉化 2.2 一些常见配置 3 简单使用3.1 上传3.2 下载3.3 添加标题或者字幕3.4 通过Tag/Category实现视频/文件分类添加 Tag给任一资源分类 1 MediaCMS简介 1.1 介绍 MediaCMS是一个现代的&#…

Spring +SpringMVC+Mybatis项目详细构造

一,文档详解 1,web.xml配置 配置spring监听器: 指定spring配置文件的位置和名称,扫描会先扫描此文件,此文件中的扫描文档作为父类扫描,父类扫描不可访问子类扫描,子类扫描可访问父类扫描 &l…

LeetCode --- 399周赛

题目列表 3162. 优质数对的总数 I 3163. 压缩字符串 III 3164. 优质数对的总数 II 3165. 不包含相邻元素的子序列的最大和 一、优质数对的总数I 这里由于数据范围比较小,我们可以直接暴力枚举,代码如下 class Solution { public:int numberOfPairs…

JavaScript字符串方法

charAt() 方法:返回指定索引处的字符。 示例: let str "Hello World"; console.log(str.charAt(0)); // Output: "H" console.log(str.charAt(6)); // Output: "W"charCodeAt() 方法:返回指定索引处字符的 Un…

数组321

package demo; public class Goodtest { public static void main(String[] args) { Good arr[]new Good[3]; Good g1new Good("001","小米",5990,100); Good g2new Good("002","保温杯",227,100); Good g3new G…

5292A 物联网信号分析仪

5292A 物联网信号分析仪 —— 10MHz~6GHz —— 简述 5292A物联网信号分析仪是一款通用的矢量信号分析仪,频率范围覆盖 10MHz~6GHz,具有良好的频率、功率测量精度和稳定度;支持模拟与数字调制信号、全制式的通信标准…

【错误记录】HarmonyOS 运行报错 ( Failure[MSG_ERR_INSTALL_FAILED_VERIFY_APP_PKCS7_FAIL] )

文章目录 一、报错信息二、问题分析二、解决方案 一、报错信息 在 DevEco Studio 中 , 运行程序 , 编译时正常编译 , 但是在真机运行时 , 报如下错误 , 核心报错信息是 " Failure[MSG_ERR_INSTALL_FAILED_VERIFY_APP_PKCS7_FAIL] " ; 完整报错信息 : 05/29 10:58:55…

vue 微信公众号H5页面截取长图并分享给朋友

截图:使用dom-to-image 或者 html2canvas 分享:可以使用右上角分享 或者 自定义分享wx.updateAppMessageShareData 截图dom-to-image 并分享 请注意,dom-to-image库在将DOM元素转换为图片时可能不会包括所有的CSS样式,因为它是基于…

【机器学习300问】104、残差网络是怎么起作用的?

残差网络(Residual Network,简称ResNet)诞生是为了解决深度神经网络的训练困难性问题。深度神经网络在图像分类等任务上取得了重大突破,但随着网络层数的增加,训练变得更加困难。 一、神经网络深度过深会出现…

用docker搭建的Vulfocus镜像管理界面没有镜像可以拉取解决办法

ps:截止到今天2023.4.2,kali和vps的docker拉取的vulfocus镜像会有版本的区别,虽然都是拉取的最新版,vps上镜像为3个月以前,kali上为16个月以前,所以在修改 views.py 文件时,可能会发现文件内容不…

国家首批20个“数据要素×”典型案例发布,珈和科技助力金融、气象两案例入榜

5月24日,国家数据局会同生态环境部、交通运输部、金融监管总局、中国科学院、中国气象局、国家文物局、国家中医药局等部门在第七届数字中国峰会主论坛上发布首批20个“数据要素”典型案例。 其中,珈和科技以其专业的产品和服务助力金融服务领域的浙江网…

享元模式具体实例(含代码)

学习目标: 了解享元模式 学习内容: 享元模式(Flyweight Pattern)在现实生活中可以用来优化资源的使用,尤其是在需要大量创建相似对象的场景下。一个经典的现实生活例子是文本编辑器中的字符对象管理。 文本编辑器中的…