|
Помогите с запросом | ☑ | ||
---|---|---|---|---|
0
NickOmsk
08.06.13
✎
11:01
|
есть справочник с кодами (число) 1,2,3, 5,6, 10,11
необходимо выбрать поле код и создать произвольное поле, в котором будет номер непрерывного интервала последовательности кода, т.е. код поле 1 1 2 1 3 1 5 2 6 2 10 3 11 3 |
|||
1
ИсчадиеADO
08.06.13
✎
11:13
|
"номер непрерывного интервала последовательности кода" - например?
|
|||
2
ИсчадиеADO
08.06.13
✎
11:13
|
код 1,2,3,4,5,6 - номер 1; код 10,11 - номер 2?
|
|||
3
NickOmsk
08.06.13
✎
11:14
|
пример привел, это как-бы уже результат запроса
|
|||
4
ИсчадиеADO
08.06.13
✎
11:14
|
ай, блин, не дочитал как всегда
|
|||
5
NickOmsk
08.06.13
✎
11:15
|
(2) допустим так тоже
|
|||
6
ИсчадиеADO
08.06.13
✎
11:15
|
имхо, лучше выгрузить в тз из запроса и пробежаться в таблице
|
|||
7
ИсчадиеADO
08.06.13
✎
11:18
|
это запрос в компоновке данных?
|
|||
8
hyperfocusin
08.06.13
✎
11:19
|
соглашусь с (6)
выгружай в ТЗ, сравнивай с предыдущим значением, если разница больше 1 - инкрементируй счетчик |
|||
9
ИсчадиеADO
08.06.13
✎
11:20
|
запросом можно, думаю, впринципе, но это самосоединение таблиц, и при большой выборке будет ну оч. долго
|
|||
10
hyperfocusin
08.06.13
✎
11:20
|
а вообще зачем тебе запрос? фигач выборку с упорядочивнием
|
|||
11
NickOmsk
08.06.13
✎
11:23
|
(7) да, в скд хочу отчет сделать
(10) у меня несколько сотен таких кодов будет, это номера билетов, хочу сгруппировать строки по интервалам и вывести нач. и конеч. номера. (такое вот задание дали) |
|||
12
ИсчадиеADO
08.06.13
✎
11:26
|
(11) блин, номера же в таблице могут повторяться и идти не по порядку?
|
|||
13
hyperfocusin
08.06.13
✎
11:27
|
(11) скд - это часть задания?
вот и сделай выборку, выгрузи её в ТЗ и пробегись как в (8), затем загони её в запрос и выгрузи в виде дерева. А это дерево значений выведи в табличном поле ) хотя хз, в скд может и проще будет, но я чёт не могу сообразить как |
|||
14
NickOmsk
08.06.13
✎
11:28
|
(12) все уникальны, там как бы еще владелец-серия есть но для простоты это опускаем, и конечно надо упорядочивать
|
|||
15
NickOmsk
08.06.13
✎
11:30
|
(13) я хотел как проще, если конечно возможен такой запрос, програмное создание отчета в скд я попозже буду делать, когда пойму что одним запросом не обойтись ))
|
|||
16
ЧашкаЧая
08.06.13
✎
11:31
|
ВЫБРАТЬ
1 КАК Значение ПОМЕСТИТЬ ВТДанные ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 2 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 3 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 5 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 6 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 10 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 11 ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Данные.Значение, ПредыдущееЗначение.Значение КАК ПредыдущееЗначение ПОМЕСТИТЬ ВТНачалаИнтервалов ИЗ ВТДанные КАК Данные ЛЕВОЕ СОЕДИНЕНИЕ ВТДанные КАК ПредыдущееЗначение ПО (Данные.Значение = ПредыдущееЗначение.Значение + 1) ГДЕ ПредыдущееЗначение.Значение ЕСТЬ NULL ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТНачалаИнтервалов.Значение КАК НачалоИнтервала, КОЛИЧЕСТВО(ВТНачалаИнтервалов1.Значение) КАК НомерИнтервала ПОМЕСТИТЬ ВТНомераИнтервалов ИЗ ВТНачалаИнтервалов КАК ВТНачалаИнтервалов ЛЕВОЕ СОЕДИНЕНИЕ ВТНачалаИнтервалов КАК ВТНачалаИнтервалов1 ПО ВТНачалаИнтервалов.Значение >= ВТНачалаИнтервалов1.Значение СГРУППИРОВАТЬ ПО ВТНачалаИнтервалов.Значение ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТДанные.Значение КАК Значение, МАКСИМУМ(ВТНомераИнтервалов.НомерИнтервала) КАК НомерИнтервала ИЗ ВТДанные КАК ВТДанные ЛЕВОЕ СОЕДИНЕНИЕ ВТНомераИнтервалов КАК ВТНомераИнтервалов ПО ВТДанные.Значение >= ВТНомераИнтервалов.НачалоИнтервала СГРУППИРОВАТЬ ПО ВТДанные.Значение |
|||
17
NickOmsk
08.06.13
✎
12:05
|
(16) спасибо большое работает ))), единственное не понял первую часть запроса, вместо нее у меня ТЧ документа
|
|||
18
NickOmsk
08.06.13
✎
12:22
|
(16) сам так быстро сделал или уже было ;)
|
|||
19
ЧашкаЧая
08.06.13
✎
12:27
|
(17) Первый запрос просто для отладки.
(18) Специально для вас, мисье, сделал. Люблю запросы, интересная задача. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |