Максимальное значение предыдущих периодов в запросе
☑
0
Zorba131
18.12.15
✎
11:58
Есть к примеру таблица:
Дата | ТекЗнач |
01.01.2015 | 10 |
02.01.2015 | 5 |
07.01.2015 | 12 |
10.01.2015 | 3 |
15.01.2015 | 11 |
01.02.2015 | 8 |
04.02.2015 | 15 |
12.02.2015 | 5 |
Как можно с помощью запроса получить колонку максимального значения среди текущего и предыдущего периодов?
Что бы получился такой результат:
Дата | ТекЗнач | МаксЗнач |
01.01.2015 | 10 | 10 |
02.01.2015 | 5 | 10 |
07.01.2015 | 12 | 12 |
10.01.2015 | 3 | 12 |
15.01.2015 | 11 | 12 |
01.02.2015 | 8 | 12 |
04.02.2015 | 15 | 15 |
12.02.2015 | 5 | 15 |
1
Nuobu
18.12.15
✎
12:03
(0) Соединить таблицу саму с собой левым соединеним по Дата >= Дата. И сгруппировать по всем полям, а по полю из соединяемой таблицы выбрать Максимум.
2
Zmich
18.12.15
✎
12:04
(0). Сделать левое соединение таблицы Таб1 со своей копией Таб2 по условию Таб1.Период <= Таб2.Период. Выбирать МАКСИМУМ(Таб2.ТекЗнач)
3
Prince-Sentido
18.12.15
✎
12:27
(0) ТС, не на СКД? Просто запрос?
4
Zorba131
18.12.15
✎
12:31
(1) Спасибо, получилось
ВЫБРАТЬ
Таблица1.Период,
Таблица1.ТекЗнач,
МАКСИМУМ(Таблица2.ТекЗнач) КАК МаксЗнач
ИЗ
РегистрСведений.Тест КАК Таблица1
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Тест КАК Таблица2
ПО Таблица1.Период >= Таблица2.Период
СГРУППИРОВАТЬ ПО
Таблица1.Период,
Таблица1.ТекЗнач
5
Nuobu
18.12.15
✎
12:36
(4) Ну надо же!
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.