Объединить строки на основе аналогичных значений столбцов - PullRequest
0 голосов
/ 25 февраля 2020

Мне нужно суммировать таблицу, содержащую эту информацию: серийный номер, StartDate, EndDate, StatusID и TimeInState, мне нужно объединить строки, которые сохраняют тот же StatusId в течение непрерывного времени (EndDate строки совпадает с StartDate другой), например, для этого случая:

Input

Мне нужно вывести что-то вроде этого:

Desired Output

I пока не могу найти решение, так как я думаю, что не могу использовать Group By, мне нужно объединить строки с указанным c SerialNumber, когда StatusId не меняется непрерывно.

1 Ответ

1 голос
/ 25 февраля 2020

выглядит так, как вы хотите group by:

select serialnumber, min(begintime), max(endtime), statusid, sum(timeinms)
from t
group by serialnumber, statusid;
...