Имя: Пароль:
1C
1С v8
v8: Имитация Среза последних
0 КУНГ ФУ 1С
 
24.06.13
15:23
1. 1-вариант 50% (1)
2. 2-вариант 50% (1)
3. не один 0% (0)
Всего мнений: 2

Вариант - 1

ВЫБРАТЬ
   Макс.Период,
   Макс.Валюта,
   КурсыВалют.Курс
ИЗ
   (ВЫБРАТЬ
       МАКСИМУМ(КурсыВалют.Период) КАК Период,
       КурсыВалют.Валюта КАК Валюта
   ИЗ
       РегистрСведений.КурсыВалют КАК КурсыВалют
   ГДЕ
       КурсыВалют.Период <= &ДатаСреза
   
   СГРУППИРОВАТЬ ПО
       КурсыВалют.Валюта) КАК Макс
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК КурсыВалют
       ПО Макс.Период = КурсыВалют.Период
           И Макс.Валюта = КурсыВалют.Валюта


Вариант - 2

ВЫБРАТЬ
   МАКСИМУМ(КурсыВалют.Период) КАК Период,
   КурсыВалют.Валюта КАК Валюта
ПОМЕСТИТЬ ВТ_Макс
ИЗ
   РегистрСведений.КурсыВалют КАК КурсыВалют
ГДЕ
   КурсыВалют.Период <= &ДатаСреза

СГРУППИРОВАТЬ ПО
   КурсыВалют.Валюта

ИНДЕКСИРОВАТЬ ПО
   Период,
   Валюта
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ВТ_Макс.Период,
   ВТ_Макс.Валюта,
   КурсыВалют.Курс
ИЗ
   ВТ_Макс КАК ВТ_Макс
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК КурсыВалют
       ПО ВТ_Макс.Период = КурсыВалют.Период
           И ВТ_Макс.Валюта = КурсыВалют.Валюта




Какой алгоритм использует платформа для СрезаПоследних.
1 КУНГ ФУ 1С
 
24.06.13
15:24
На сколько мне известо скорее она испольует вложенный запрос. Кто что думает?
А не оптимальней использовать 2 вариант с временной таблицей

1-вариант
2 Nexux
 
24.06.13
15:27
имхо

2-вариант
3 Maxus43
 
24.06.13
15:28
использует 1-й вариант.

Про оптимальность - сомневаюсь, затраты на создание ВТ тоже есть.
Если статистика свежая - оптимальней будет вложенный почти наверняка.

Смысл вопроса? профайлером посмотри чтобы наверняка узнать
4 КУНГ ФУ 1С
 
24.06.13
15:29
(3) я смотрел и там действительно испольуется вложенный запрос
5 Джинн
 
24.06.13
15:29
(1) На кой ляд временные таблицы, если это достается одним запросом да еще по индексированным полям? Профайлер Вам в помощь...
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.