![]() |
|
СКД: Срез последних средствами ВычислитьВыражение() | ☑ | ||
---|---|---|---|---|
0
Crush
27.05.14
✎
15:59
|
Есть некоторая таблица День(Дата)/Измерение1/Измерение2/Период(Дата+Время)/Ресурс
http://i022.radikal.ru/1405/d0/a0d017fc881e.jpg Делаю группировки по День/Измерение1/Измерение2 http://s020.radikal.ru/i706/1405/0e/3f2f10360a9a.jpg Как мне правильно описать ресурс (не поле в таблице, а ресурс, который скд ресурс:)), что бы: 1. Напротив Измерение2 было значение на максимальную дату (поле период внутри группы). Грубо говоря я сортирую таблицу по некоторому полю и получаю данные первой или последней строки упорядоченной таблицы. 2. Напротив измерения1 была инфа о всех Измерениях2, которые встречались до текущего дня и их последние значения. т.е. 29-го мая я хочу оперировать значениями Топор-87 в группировке Инвентарь и Ведро-233 в группировке Тара (если бы такая была). Как такую штуку реализовать в запросе я знаю. И что то мне подсказывает, что можно это сделать с помощью функции ВычислитьВыражение(). Но что то никак не соображается как это сделать. Вот текст таблицы, если кто захочет поэкспериментировать ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 27, 16, 16, 16) КАК Период, "Инвентарь" КАК Измерение1, "Топор" КАК Измерение2, 75 КАК Ресурс ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 27, 16, 18, 34), "Инвентарь", "Грабли", 34 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 27, 16, 56, 16), "Инвентарь", "Топор", 56 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 27, 18, 16, 16), "Инвентарь", "Грабли", 99 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 28, 12, 16, 16), "Инвентарь", "Топор", 22 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 29, 13, 16, 16), "Инвентарь", "Грабли", 65 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 28, 16, 56, 16), "Инвентарь", "Топор", 87 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 29, 18, 16, 16), "Инвентарь", "Грабли", 67 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 27, 11, 11, 11), "Тара", "Ведро", 23 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 27, 13, 11, 11), "Тара", "Ведро", 233 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДАТАВРЕМЯ(2014, 5, 27, 10, 11, 11), "Тара", "Ведро", 20 День задаю в вычисляемых полях как НачалоПериода(Период,"День") |
|||
1
Crush
28.05.14
✎
10:02
|
Пример как получить в детальных записях значения на минимальную дату и на максимальную. Внутри группировки.
На максимальную: ВычислитьВыражение("Ресурс", , , "Первая", "Первая", "Период Убыв") На минимальную: ВычислитьВыражение("Ресурс", , , "Первая", "Первая", "Период Возр") или ВычислитьВыражение("Ресурс", , , "Последняя", "Последняя", "Период Убыв") http://s018.radikal.ru/i515/1405/62/fd3901f3b5ba.jpg На мой взгляд это удобнее, чем в запросе сначала выбирать максимальные даты приклеивать к ним значения на эти даты. Курю дальше.. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |