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

Откуда: СПб
Сообщений: 248
Есть таблица с полями интервала (начало, окончание) и массой других полей. В простейшем случае это выглядит так
declare @Tab table (B int, E int, Value int)

insert into @Tab (B, E, Value) select 
1, 5, 10 union all select
6, 8, 10 union all select
9, 12, 3  union all select
13, 13, 10 union all select
14, 20, 5


Есть гарантия, что разбиение без дырок и наложений, т.е. "E" для предыдущей записи = "В"-1 для последующей записи при order by B.
Требуется получить объединение непрерывных интервалов для одинакового значения поля Value. Т.е. ожидается результат
1	8	10
9 12 3
13 13 10
14 20 5

Меньше, чем 4-мя упоминаниями таблицы в тексте запроса не осилил, и мучает ощущение, что где-то здесь видел изящный скрипт на эту тему. Но не нашел.
19 апр 12, 13:59    [12439185]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сборку интервалов  [new]
iljy
Member

Откуда:
Сообщений: 8711
remi_,

10645735
19 апр 12, 14:14    [12439374]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сборку интервалов  [new]
remi_
Member

Откуда: СПб
Сообщений: 248
To ilij
Как-то не совсем то. А скорее совсем не то.
Или я традиционно туплю.
19 апр 12, 14:50    [12439762]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сборку интервалов  [new]
iljy
Member

Откуда:
Сообщений: 8711
remi_
To ilij
Как-то не совсем то. А скорее совсем не то.
Или я традиционно туплю.

чей-то не то вдруг? Все то, объединение последовательных интервалов, с дополнительной группировкой по дате. Ваша задача еще и проще.
19 апр 12, 15:01    [12439872]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сборку интервалов  [new]
remi_
Member

Откуда: СПб
Сообщений: 248
А, пожалуй, что и да.
Я же говорил - туплю.

Сердечное мерси.
19 апр 12, 15:32    [12440206]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить