SQL 50 › 索引 › A2 Basic Joins 基础 JOIN
LC 1661每台机器的进程平均运行时间Average Time of Process per Machine 简单
Activity 表每个进程有 start、end 两条记录带时间戳;求每台机器所有进程的平均运行时长,保留 3 位小数。
思路 自连接按机器+进程配对 start/end,AVG 时长 + ROUND。
SELECT A.machine_id, ROUND(AVG(B.timestamp - A.timestamp), 3) AS processing_time FROM Activity A JOIN Activity B ON A.machine_id = B.machine_id AND A.process_id = B.process_id AND A.activity_type = 'start' AND B.activity_type = 'end' GROUP BY A.machine_id;