Группировка по статусу, затем по приоритету и извлечение самого раннего времени начала и последнего времени окончания, если они существуют в разных строках

281
hello world

В MySQL, как я могу сгруппировать по статусу, затем по приоритету и взять время начала и самое позднее время окончания, если они существуют в разных строках?

Вот как сейчас выглядят мои данные:

Screenshot od current data

Вот как я хотел бы, чтобы данные выглядели так:

Screenshot of required output

0
Если вы пробовали что-то, что не работает, поделитесь этим с нами. Dave 5 лет назад 0

1 ответ на вопрос

0
danblack

Сначала сгруппируйте их и дайте min / max извлечь нужное время, например:

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