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

leetcode-sql数据库面试题冲刺(高频SQL五十题)

题目:

577.员工奖金
表:Employee

±------------±--------+
| Column Name | Type |
±------------±--------+
| empId | int |
| name | varchar |
| supervisor | int |
| salary | int |
±------------±--------+
empId 是该表中具有唯一值的列。
该表的每一行都表示员工的姓名和 id,以及他们的工资和经理的 id。

表:Bonus

±------------±-----+
| Column Name | Type |
±------------±-----+
| empId | int |
| bonus | int |
±------------±-----+
empId 是该表具有唯一值的列。
empId 是 Employee 表中 empId 的外键(reference 列)。
该表的每一行都包含一个员工的 id 和他们各自的奖金。

编写解决方案,报告每个奖金少于 1000 的员工的姓名和奖金数额。

以 任意顺序 返回结果表。

结果格式如下所示。

示例 1:

输入:
Employee table:
±------±-------±-----------±-------+
| empId | name | supervisor | salary |
±------±-------±-----------±-------+
| 3 | Brad | null | 4000 |
| 1 | John | 3 | 1000 |
| 2 | Dan | 3 | 2000 |
| 4 | Thomas | 3 | 4000 |
±------±-------±-----------±-------+
Bonus table:
±------±------+
| empId | bonus |
±------±------+
| 2 | 500 |
| 4 | 2000 |
±------±------+
输出:
±-----±------+
| name | bonus |
±-----±------+
| Brad | null |
| John | null |
| Dan | 500 |
±-----±------+

思路:

由于这次是双表,需凭借empId列将两张表拼接在一起才能获得结果,所以考虑join关键词。结合题目要求为“每个奖金少于 1000 的员工的姓名和奖金数额”,所以使用left join关键词(存在员工奖金为null的情况
需要找的是员工的姓名和奖金数额,那么select寻找的就是name、bonus。

代码:

SELECT e.name,b.bonus
FROM Employee AS e
LEFT JOIN Bonus AS b
ON e.empId = b.empId
WHERE b.bonus < 1000 OR b.bonus IS NULL

相关文章:

  • MySQL第一次作业
  • ubuntu24.04-系统重装
  • fastapi+angular停车管理系统可跨域
  • MaxKB结合DeepSeek快速构建客服企业知识库
  • MySQL 用户与权限管理详解:从角色解锁到安全加固
  • Codemirror编辑器中引入其他语言支持的方式
  • 图形界面控件编程(iOS)
  • 文档进行embedding,Faiss向量检索
  • 数据集笔记:LTA static datasets
  • js实现pdf文件路径预览和下载
  • React Server Components:高性能React开发
  • 【2025年22期免费获取股票数据API接口】实例演示五种主流语言获取股票行情api接口之沪深A股历史成交分布数据获取实例演示及接口API说明文档
  • C#获取本机串口列表
  • 性能测试 学习基础
  • 一招解决Pytorch GPU版本安装慢的问题
  • Node.js 报错 ENOBUFS 处理方案
  • golang从入门到做牛马:第一篇-我与golang的缘分,go语言简介
  • Chain of Draft: 借鉴人类草稿思维让大型语言模型更快地思考
  • createrepo centos通过nginx搭建本地源
  • 达梦数据库如何在Linux上配置DTS工具
  • 建设部网站危险性较大/免费建自己的网站
  • 长沙3合1网站建设/百度官方营销推广平台
  • 石家庄建站公司/互联网推广招聘
  • 苏州建设建设信息网站/网站推广基本方法是
  • 专业做网站的公司有哪些/快排seo
  • 免费虚拟空间网站/seo网站优化培训