【牛客SQL】SQL19 查找所有员工的last_name和first_name以及对应的dept_name

2023-11-05

题目描述

在这里插入图片描述

描述
有一个员工表employees简况如下:

在这里插入图片描述

有一个部门表departments表简况如下:

在这里插入图片描述

有一个,部门员工关系表dept_emp简况如下:

在这里插入图片描述

请你查找所有员工的last_name和first_name以及对应的dept_name,也包括暂时没有分配部门的员工,以上例子输出如下:

示例1
输入:
drop table if exists  `departments` ; 
drop table if exists  `dept_emp` ; 
drop table if exists  `employees` ; 
CREATE TABLE `departments` (
`dept_no` char(4) NOT NULL,
`dept_name` varchar(40) NOT NULL,
PRIMARY KEY (`dept_no`));
CREATE TABLE `dept_emp` (
`emp_no` int(11) NOT NULL,
`dept_no` char(4) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`dept_no`));
CREATE TABLE `employees` (
`emp_no` int(11) NOT NULL,
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));
INSERT INTO departments VALUES('d001','Marketing');
INSERT INTO departments VALUES('d002','Finance');
INSERT INTO departments VALUES('d003','Human Resources');
INSERT INTO dept_emp VALUES(10001,'d001','1986-06-26','9999-01-01');
INSERT INTO dept_emp VALUES(10002,'d001','1996-08-03','9999-01-01');
INSERT INTO dept_emp VALUES(10003,'d002','1990-08-05','9999-01-01');
INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26');
INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21');
INSERT INTO employees VALUES(10003,'1959-12-03','Parto','Bamford','M','1986-08-28');
INSERT INTO employees VALUES(10004,'1954-05-01','Chirstian','Koblick','M','1986-12-01');
复制
输出:
Facello|Georgi|Marketing
Simmel|Bezalel|Marketing
Bamford|Parto|Finance
Koblick|Chirstian|None

题解

运行时间:12ms
超过86.54% 用Sqlite提交的代码
占用内存:3584KB
超过8.06%用Sqlite提交的代码

SELECT e.last_name, e.first_name, t.dept_name 
FROM employees AS e LEFT JOIN (
    SELECT d1.emp_no, d1.dept_no, d2.dept_name 
    FROM dept_emp d1 LEFT JOIN departments d2
    WHERE d1.dept_no = d2.dept_no
) AS t
ON e.emp_no = t.emp_no
;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【牛客SQL】SQL19 查找所有员工的last_name和first_name以及对应的dept_name 的相关文章

随机推荐

  • 【Python】Python可变参数*args **kwargs

    可变参数 args 和 kwargs 作为函数定义时 收集未匹配参数组成tuple或dict对象 参数也就是 args收集所有未匹配的位置参数组成一个tuple对象 局部变量args指向此tuple对象 参数也就是 kwargs收集所有未匹
  • 巧用异频测量快速评估友商4G网络覆盖

    摘 要 通过在联通4G网络异频测量配置数据中增加友商使用的4G网络频点 让联通现网中使用全网通的用户上报的测量报告数据 MR 包含有友商频点的测量信息 再对测量报告数据 MR 进行统计分析 可以实现快速 高效的对友商4G网络的覆盖进行全面评
  • 电流检测总结

    电流检测总结 电流检测是工业上常用到的一门技术 平常工作也经常与之打交道 因为我是小白 所以今天打算对它做一个简单的总结 防止遗忘 对于被检测的电路 一般使用阻值很小的采样电阻串联在电路中进行采样 然后检测这个采样电阻两端的电压信号 Vin
  • Unity Shader 实现描边OutLine效果

    Shader实现描边流程大致为 对模型进行2遍 2个pass 绘制 第一遍 描边pass 在vertex shader中对模型沿顶点法线方向放大 fragment shader设置输出颜色为描边颜色 第二遍正常绘制模型 除被放大的部分外 其
  • react如何调用子组件身上的方法

    使用场景 需要重复触发子组件弹窗或者需要在子组件修改值的时候可以采用调用子组件身上特定方法执行操作 在次介绍一下最新hooks的操作和旧版本class组件调用方式 一 Hooks api调用方式 需要用到的Api useRef useImp
  • 哈呀嗓,济南

    今天收到了泰莱区宏图三胞招聘主管的邮件 说是让联系沈经理 备注在这里以免忘记 还有就是 下午打印简历的时候潍坊新北海打电话过来 说他们公司也需要php程序员 这个也待定吧 一切还是以济南为主吧 不行再走 地形 济南市位于北纬36 40 东经
  • XXL-JOB(分布式任务调度平台)的使用(详细教程)

    概述 首先我们要知道什么是XXL JOB 官方简介 XXL JOB是一个分布式任务调度平台 其核心设计目标是开发迅速 学习简单 轻量级 易扩展 现已开放源代码并接入多家公司线上产品线 开箱即用 XXL JOB的有点特性 1 简单 支持通过W
  • Hibernate 项目查询数据报 UnknownEntityTypeException

    原因分析 1 hibernate cfg xml配置文件有没有映射实体类
  • 一文带你全面理解向量数据库

    近些年来 向量数据库引起业界的广泛关注 一个相关事实是许多向量数据库初创公司在短期内就筹集到数百万美元的资金 你很可能已经听说过向量数据库 但也许直到现在才真正关心向量数据库 至少 我想这就是你现在阅读本文的原因 如果你阅读本文只是为了简单
  • wireshark过滤器的使用

    目录 wireshark wireshark的基本使用 wireshark过滤器的区别 抓包案例 wireshark wireshark的基本使用 抓包采用 wireshark 提取特征时 要对 session 进行过滤 找到关键的stre
  • 华为云使用手册

    华为云重磅福利 云主机 海外云主机 云容器和多款云产品0元领取 华为云重磅推出云上优选 特惠来袭来迎接这个来之不易的春天 本次活动依然是给到了很低的折扣 0 7折起 活动走起 福利1 免费试用海外云主机和云原生容器网页连接 进入免费试用专区
  • CentOS安装python3.x最新版和chrome chromedriver

    之前使用selenium wire的响应拦截器获取请求头中的签名需要部署到服务器 所以得搭建一个服务器运行环境 安装过程有坑 这里记录一下 Linux平台安装需要下载源码包自己编译 下载地址 https www python org dow
  • hexo主题标签的使用

    https akilar top posts 615e2dec 这个是我看的教程 我直接复制的源码 友情链接 LrcShare 实现hexo标签的可以折叠 hexo标签的使用方法 要实现Hexo标签的可折叠 可以使用Hexo内置的foldi
  • ad中按钮开关的符号_收藏:电路图符号大全

    电子设备中有各种各样的图 能够说明它们工作原理的是电原理图 简称电路图 电路图是说明模拟电子电路工作原理的 它用各种图形符号表示电阻器 电容器 开关 晶体管等实物 用线条把元器件和单元电路按工作原理的关系连接起来 一张电路图就好像是一篇文章
  • 在SpringBoot中加入jsp

    SpringBoot官方不推荐在 SpringBoot 中使用 jsp 的 那么到底可以使用吗 答案是肯定的 不过需要导入tomcat 插件启动项目 不能再用 SpringBoot 默认 tomcat 了 一 导入SpringBoot的to
  • React实现大文件上传、react-dropzone

    React大文件上传的实现方案大致如下 使用第三方组件库实现文件上传 如react dropzone 将大文件分成多个小块 并使用XMLHttpRequest或者fetch发送分块上传请求 为了保证数据完整性 每个请求都需要携带校验码 在上
  • (0)JavaScript语法---小程序回调函数【幼儿园级教程】

    微信小程序中的回调函数 史上最简单的幼儿园基础教程 小程序的回调函数 汉字版的编码 你是不是第一次见到 总结 小程序的回调函数 在小程序包含逻辑时 回调函数几乎是无法避免 在整个使用中 发现大部分帖子都是针对有一定的基础的伙伴写的 也比较晦
  • Flink 1.11:更好用的流批一体 SQL 引擎

    许多的数据科学家 分析师和 BI 用户依赖交互式 SQL 查询分析数据 Flink SQL 是 Flink 的核心模块之一 作为一个分布式的 SQL 查询引擎 Flink SQL 提供了各种异构数据源的联合查询 开发者可以很方便地在一个程序
  • 树莓派Tools交叉编译OpenGL(mesa-12.0.5)

    以下shell命令都是在root权限下执行的 得按照顺序来 不然会报找不到包或者一些文件找不到这些话 交叉编译玩多了 自己翻来覆去 整多了后其实也就融会贯通了 有耐心就行 宗旨就是你得让它们找到的到对应文件 一般要么在环境变量里去pkg c
  • 【牛客SQL】SQL19 查找所有员工的last_name和first_name以及对应的dept_name

    题目描述 描述 有一个员工表employees简况如下 有一个部门表departments表简况如下 有一个 部门员工关系表dept emp简况如下 请你查找所有员工的last name和first name以及对应的dept name 也