LC 速查

SQL 50索引 › A5 Advanced Select and Joins 高级查询与连接

LC 1204最后一个能进入公交车的人Last Person to Fit in the Bus 中等

Queue 表按 turn 顺序记录乘客体重;公交车限重 1000 千克,乘客按 turn 依次上车,求能上车的最后一位乘客姓名。

思路 窗口 SUM 按 turn 累计体重,取累计不超过 1000 的最后一人。

SELECT person_name
FROM (
  SELECT person_name,
         SUM(weight) OVER (ORDER BY turn) AS total
  FROM Queue
) T
WHERE total <= 1000
ORDER BY total DESC
LIMIT 1;

数据表:Queue · 关键字:公交车限重 1000 千克,乘客按 turn 依次上车,求能上车的最后一位乘客姓名

← 上一题 指定日期的产品价格按分类统计薪水 下一题 →