Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Как получить диапазоны дат в запросе?

Как получить диапазоны дат в запросе?
Я
   Господин ПЖ
 
10.01.13 - 18:17
Например есть такая времянка:

ВЫБРАТЬ
    ДАТАВРЕМЯ(2013, 1, 1) КАК дата,
    100 КАК ставка
ПОМЕСТИТЬ ставки

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ДАТАВРЕМЯ(2013, 2, 1),
    200
ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ДАТАВРЕМЯ(2013, 3, 1),
    300

на выходе в выборке нужно

01.01.2013/31.01.2013/100
01.02.2013/28.02.2013/200
01.03.2013/30.03.2013/300

делается это в рамках одного запроса?
 
 
   Fragster
 
1 - 10.01.13 - 18:17
да
   Fragster
 
2 - 10.01.13 - 18:18
соедини само с собой по "меньше", сгруппируй и получи максимум
   Господин ПЖ
 
3 - 10.01.13 - 18:25
(2) что-то не получается
   Fragster
 
4 - 10.01.13 - 18:25
(3) тогда 300 рублей
   rphosts
 
5 - 10.01.13 - 18:28
(0) хошь дам тебе запрос который выдаёт даты по порядку? Дальше сам допилишь...
   Господин ПЖ
 
6 - 10.01.13 - 18:30
(5) давай...
   rphosts
 
7 - 10.01.13 - 18:32
ща накалякаю
   rphosts
 
8 - 10.01.13 - 18:34
ВЫБРАТЬ Цифры.Поле1 КАК Цифра 
 ПОМЕСТИТЬ Цифры
ИЗ  (ВЫБРАТЬ 1 КАК Поле1 
ОБЪЕДИНИТЬ  ВЫБРАТЬ 2 
ОБЪЕДИНИТЬ  ВЫБРАТЬ 3  
ОБЪЕДИНИТЬ  ВЫБРАТЬ 4
ОБЪЕДИНИТЬ  ВЫБРАТЬ 5 
ОБЪЕДИНИТЬ  ВЫБРАТЬ 6
ОБЪЕДИНИТЬ  ВЫБРАТЬ 7
ОБЪЕДИНИТЬ  ВЫБРАТЬ 8
ОБЪЕДИНИТЬ  ВЫБРАТЬ 9
ОБЪЕДИНИТЬ  ВЫБРАТЬ 10) КАК Цифры 
;
 //////////////////////////////////////////////
 
ВЫБРАТЬ  ДОБАВИТЬКДАТЕ(&Дата1, ДЕНЬ, (Цифры.Цифра-1) + (Цифры1.Цифра -1)*10+ (Цифры2.Цифра -1)*100) КАК Дата
ИЗ  Цифры КАК Цифры,   Цифры КАК Цифры1,   Цифры КАК Цифры2 
ГДЕ   ДОБАВИТЬКДАТЕ(&Дата1, ДЕНЬ, (Цифры.Цифра-1) + (Цифры1.Цифра -1)*10+ (Цифры2.Цифра -1)*100)
УПОРЯДОЧИТЬ ПО  Дата
   Kashemir
 
9 - 10.01.13 - 18:35
ВЫБРАТЬ
    ТЗ.Период,
    ТЗ.Ставка
ПОМЕСТИТЬ ТЗ
ИЗ
    &ТЗ КАК ТЗ
;

 ////////////////////////////////////////////////////////////////////////////////
 
ВЫБРАТЬ
    ТЗ.Период КАК Период,
    МИНИМУМ(ТЗ1.Период) КАК Период1,
    ТЗ.Ставка
ИЗ
    ТЗ КАК ТЗ
        ЛЕВОЕ СОЕДИНЕНИЕ ТЗ КАК ТЗ1
        ПО ТЗ.Период < ТЗ1.Период

СГРУППИРОВАТЬ ПО
    ТЗ.Период,
    ТЗ.Ставка

УПОРЯДОЧИТЬ ПО
    Период
   Fragster
 
10 - 10.01.13 - 18:35
(8) в (0) этого не нужно
 
 Рекламное место пустует
   Fragster
 
11 - 10.01.13 - 18:35
(9) близко, но нет
   Reset
 
12 - 10.01.13 - 18:36
Пример к (2)

Выбрать Максимум(Вт2.Дата),ДобавитьКДате(Вт1.Дата,День,-1),Вт1.Ставка
Из Вт как Вт1 Левое Соединение Вт как Вт2
по Вт1.Дата>Вт2.Дата
Сгруппировать по Вт1.Дата,Вт1.Ставка
   rphosts
 
13 - 10.01.13 - 18:36
(10) вломм мне думать в полдесятого... что предложил - то и набацал
   Kashemir
 
14 - 10.01.13 - 18:36
(11) Что конкретно не так ?
   Fragster
 
15 - 10.01.13 - 18:37
(14) это я туплю, все правильно
   Господин ПЖ
 
16 - 10.01.13 - 18:40
(11) вроде похоже на правду...

(9) спасибо

(8) спасибо
   Господин ПЖ
 
17 - 10.01.13 - 18:40
всем спасибо за помощь
   Reset
 
18 - 10.01.13 - 18:41
в (9) правильней, я поторопился

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует