Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема ИндексированнаяТаблица Vs временная таблица SQL для получения итогов? (число прочтений - 1524 )
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
ИндексированнаяТаблица Vs временная таблица SQL для получения итогов?
20. Октября 2010 :: 13:26
Печать  
Хочу написать класс аналог стандартного регистра с методами Итог() и СводныйИтог(). И тут возник вопрос, что использовать для этих случаев? Изначально, вместо Регистр.УстановитьФильтр() и Рассчитать() используется запрос с выгрузкой в ТаблицаЗначений (или ИндексированнаяТаблица), потом чтобы получать сводные итоги по измерениям или срезы по фильтрам по измерениям можно использовать или методы Итог, ИтогПоДиапазону. Но можно использовать и временную таблицу SQL куда выгружать результат запроса при первоначальном расчете. Кто что использует, какие плюсы и минусы?
  
Наверх
IP записан
 
Leierkastenmann
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 114
Зарегистрирован: 30. Марта 2007
Re: ИндексированнаяТаблица Vs временная таблица SQL для получения итогов?
Ответ #1 - 20. Октября 2010 :: 14:04
Печать  
В отношении регистров не использую ни то, ни другое, потому что не особенно нужно.

Когда-то давно я пытался тестировать скорость работы для временной таблицы и индексированной таблицы. По моим тестам выходило, что когда выборка не очень большая (где-то до 5000 строк), то быстрее была индексированная таблица, когда счет шел на десятки тысяч строк, то быстрее выходила временная таблица. Наверное, это и логично.
В результате там где выборка может быть какого угодно размера, я сделал выбор в пользу временных таблиц, потому что там где выигрывала индексированная таблица, выигрыш не в относительном, а в абсолютном измерении был незначительный.
  
Наверх
 
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ИндексированнаяТаблица Vs временная таблица SQL для получения итогов?
Ответ #2 - 20. Октября 2010 :: 14:27
Печать  
Leierkastenmann писал(а) 20. Октября 2010 :: 14:04:
В отношении регистров не использую ни то, ни другое, потому что не особенно нужно.

Когда-то давно я пытался тестировать скорость работы для временной таблицы и индексированной таблицы. По моим тестам выходило, что когда выборка не очень большая (где-то до 5000 строк), то быстрее была индексированная таблица, когда счет шел на десятки тысяч строк, то быстрее выходила временная таблица. Наверное, это и логично.
В результате там где выборка может быть какого угодно размера, я сделал выбор в пользу временных таблиц, потому что там где выигрывала индексированная таблица, выигрыш не в относительном, а в абсолютном измерении был незначительный.


Спасибо.
  
Наверх
IP записан
 
Евген
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 40
Местоположение: Улан-Удэ
Зарегистрирован: 20. Января 2009
Пол: Мужской
Re: ИндексированнаяТаблица Vs временная таблица SQL для получения итогов?
Ответ #3 - 31. Октября 2010 :: 07:20
Печать  
Цитата:
Хочу написать класс аналог стандартного регистра


Тоже хочу написать такой класс для работы с MySQL сервером.
Как успехи у вас?
  
Наверх
wwwICQ  
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: ИндексированнаяТаблица Vs временная таблица SQL для получения итогов?
Ответ #4 - 31. Октября 2010 :: 09:13
Печать  
Евген писал(а) 31. Октября 2010 :: 07:20:
Цитата:
Хочу написать класс аналог стандартного регистра


Тоже хочу написать такой класс для работы с MySQL сервером.
Как успехи у вас?

Не у одного меня подобные желания! Улыбка
приятно, что появился брат по SQL-ю!
  
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать