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

【力扣SQL】几个常见SQL题

【力扣SQL】184. 部门工资最高的员工
Employee:id(主键)、name、salary、departmentId(外键)
Department:id(主键)、name
出每个部门中薪资最高的员工:Department.name、Employee.name、Salary

SELECT
    Department.name AS 'Department',
    Employee.name AS 'Employee',    
    Salary
FROM
    Employee,
    Department
where 
    Employee.DepartmentId = Department.Id
and
    (Employee.DepartmentId , Salary) IN
    (   
        # 每个部门最高薪水:部门id,薪水数
        SELECT DepartmentId, MAX(Salary) as Salary
        FROM Employee
        GROUP BY DepartmentId
    )

【力扣SQL】176. 第二高的薪水

Employee:id(主键)、salary
查询并返回表中第二高的薪水 。如果不存在第二高的薪水,返回 null

select
(
    select distinct Salary
    from Employee
    order by Salary desc
    limit 1 
    offset 1
) as SecondHighestSalary

【力扣SQL】178. 分数排名

Scores:id、score
查询并对分数从高到低进行排序。如果两个分数相等,那么两个分数的排名应该相同。在排名相同的分数后,排名数应该是下一个连续的整数。

select
  score,
  dense_rank() over (
    order by score desc
  ) as 'rank'
from
  Scores

【力扣SQL】180. 连续出现的数字

Logs:id(主键,自增)、num
找出所有至少连续出现三次的数字。返回的结果表中的数据可以按任意顺序排列。

select distinct
    l1.Num as ConsecutiveNums
from
    Logs l1,
    Logs l2,
    Logs l3
where
    l1.Id = l2.Id - 1
    and l2.Id = l3.Id - 1
    and l1.Num = l2.Num
    and l2.Num = l3.Num

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

相关文章:

  • 基于表格滚动截屏(表格全部展开,没有滚动条)
  • 智能零售柜商品识别
  • uni-app表单⑪
  • 快速学习Serde包实现rust对象序列化
  • 一文了解珈和科技在农业遥感领域的服务内容和能力
  • LeetCode【0018】四数之和
  • 并发编程
  • uniapp开发小程序—根据生日日期计算年龄 周岁
  • 【自动驾驶】Free space与Ray casting
  • SpringBoot面试题8:运行 Spring Boot 有哪几种方式?Spring Boot 需要独立的容器运行吗?
  • ubuntu 18 更新git版本到 2.80.1
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • 求二进制最低位1和最高位1的方法,以及反转二进制,复杂度O(1)
  • Python-easygui
  • 开发库介绍
  • 链游风暴再起?MBOX即将再度起飞
  • O(1) 时间插入、删除和获取随机元素
  • 你会处理 go 中的 nil 吗
  • ChatGPT 驱动软件开发:AI 在软件研发全流程中的革新与实践
  • 38基于matlab的期货预测,利用PSO优化SVM和未优化的SVM进行对比,得到实际输出和期望输出结果。
  • 万字解析设计模式之单例模式
  • 为wget命令设置代理
  • 利用 JSqlParser 防止 SQL 注入
  • String、StringBuffer、StringBuilder和StringJoiner
  • prometheus服务发现
  • 松下A6B伺服 马达不动问题解决