按状态和优先级分组,并提取最早开始时间和最晚结束时间(如果它们存在于不同的行)

按状态和优先级分组,并提取最早开始时间和最晚结束时间(如果它们存在于不同的行)

在 MySQL 中,如何按状态、优先级进行分组,并获取开始时间和最晚结束时间(如果它们存在于不同的行)?

这就是我的数据现在的样子:

当前数据的屏幕截图

我希望数据看起来是这样的:

所需输出的屏幕截图

答案1

首先对它们进行分组,然后让最小值/最大值提取正确的时间,例如:

SELECT id, name, status, priority, min(start) as start, max(end) as end, end-start as 'time difference' 
FROM issues
GROUP BY id,status, priority

相关内容