AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.10.2003, 11:33   #1  
Shark is offline
Shark
Участник
Аватар для Shark
 
47 / 11 (1) +
Регистрация: 12.09.2003
Адрес: Москва
? Какой запрос лучше?
Скажите, пожалуйста, что в Axapta работает эффективнее - один навороченный запрос или тот же запрос, но разбитый на несколько подзапросов.

Спасибо.
Старый 02.10.2003, 11:42   #2  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Один навороченный запрос отнимает меньше времени. Пройдитесь профайлером кода, и вы увидите, что маленькие скромные вложенные запросы по одной таблице могут составлять до 30% временных затрат.
Старый 02.10.2003, 23:02   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Согласен с EVGL
Однако надо учитывать, что если "навороченный запрос" генерит гигабайтные логи...
Если "навороченный запрос" выполняется в сетевом режиме одновременно с другими пользователями...
Если "навороченный запрос" надолго блокирует данные...
Если СУБД быстро поднимает блокировку на уровень таблицы...

То имеет смысл разбить такой "навороченный запрос" на несколько маленьких.
Тогда, если тестировать локально, то будет работать медленнее, а вот в сетевом варианте разбитие позволит достичь приемлимой производительности системы в целом.
Старый 03.10.2003, 09:33   #4  
Wamr is offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1,737 / 858 (32) +++++++
Регистрация: 15.01.2002
Адрес: Москва
Записей в блоге: 7
Согласен с mazzy.

Хочу добавить, что план и время выполнения (на сервере) большого сложного запроса сильно зависит от содержимого объединяемых таблиц, и опыт показывает, что рано или поздно его придется поделить, хотябы на 2 части.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
передача параметров в запрос while select tolstjak DAX: Программирование 13 15.02.2009 19:39
Как собрать запрос? moid DAX: Программирование 11 02.07.2007 12:07
Почему join запрос разбивается на подзапросы!? 3oppo DAX: Программирование 59 28.06.2007 11:52
Долго отрабатывает запрос по таблице InventItemLocation AlexeyBP DAX: Администрирование 1 30.05.2007 17:33
Как лучше поступить ? Андре DAX: Программирование 4 04.04.2002 18:55

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 19:37.