Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Нужна помощь в написании сложного запроса  [new]
theViator
Member

Откуда:
Сообщений: 3
Добрый день, будьте добрые, окажите помощь в решение задачи
Есть таблица со следующей легендой
Create table #tmp
(
cod_u int -- код услуги
, period int -- период окозания услуги
, owner int -- код поставщика услуги
)
insert into #tmp(cod_u, period, owner)
values (1, 1, 1)
, (1, 2, 1)
, (1, 3, 1)
, (1, 4, 2)
, (1, 5, 1)
, (1, 6, 2)
, (1, 7, 2)
, (1, 8, 1)
, (1, 9, 1)
, (2, 1, 1)
, (2, 2, 1)
, (2, 3, 1)
, (2, 4, 1)
, (2, 4, 2)
, (2, 5, 1)
, (2, 5, 2)
, (2, 6, 2)
, (2, 7, 2)
, (2, 7, 1)
, (2, 11, 1)
Нужно «сгруппировать» записи так, чтобы выводились периоды, за который поставщики оказывали услуги. В итоге должно получиться следующее
cod_u Start End Owner
1 1 3 1
1 4 4 2
1 5 5 1
1 6 7 2
1 8 9 1
2 1 5 1
2 4 7 2
2 7 11 1
Т.е нужна информация - с какого по какой период услуга оказывалась поставщиком. Если за один период услугу оказывало два поставщика – ничего «страшного» проверяем следующий период, кто оказывал услугу (пример – 2, 1, 5, 1 и 2, 4, 7, 2 ). Если услугу оказали, например, в периоде 7, а потом только за период 11, а промежутке услугу никто не оказывал должно быть – 2, 7, 11,1.
Надеюсь, правильно сформулировал вопрос, очень надеюсь на помощь форума, если нужно что-то уточнить/объяснить – объясню
26 мар 18, 09:17    [21285078]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить