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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.07.2014, 13:30   #1  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,914 / 5737 (197) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Говоря о сути проблемы: Чтобы там не писалось в best practice, на мой взгляд, перечисление выбираемых полей в select имеет смысл только в двух случаях:
1. Есть покрывающий индекс (и мы боремся за скорость какого-то очень часто выполняющегося запроса).
2. Массово выбираем данные из какой-то очень разбухшей таблицы (то есть - больше 20-25 полей и выбираем тысячи, а не десятки записей).
Во всех остальных случаях - экономия нескольких килобайт трафика между AOS и сервером БД не покроет потенциального гемора с попыткой доступа к непрочитанному полю при быстром латании кода.

Ну и конечно - если ни одно поле из таблицы вообще не используется - ей самое место в exists join или в join tableid from table.
Старый 24.07.2014, 19:34   #2  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,039 / 1635 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Цитата:
Сообщение от fed Посмотреть сообщение
1. Есть покрывающий индекс (и мы боремся за скорость какого-то очень часто выполняющегося запроса).
а вот с покрывающимися индексами в 2012 сделали большую засаду, независимо от указанного списка полей выбирается RecId, неизвестно как бороться с этим

большой выигрыш кстати дает перечисление полей при наличие в таблице полей с типом контейнер(они хранятся в бд отдельно от строк, и запрос к ним резко снижает скорость выборки), но это уже косяки проектирования
Старый 25.07.2014, 09:09   #3  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,996 / 3293 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от trud Посмотреть сообщение
а вот с покрывающимися индексами в 2012 сделали большую засаду, независимо от указанного списка полей выбирается RecId, неизвестно как бороться с этим
Не пробовали группировку добавить по отбираемым полям ?
По идее план запроса не должен ухудшиться - все равно по индексу пойдет перебор.
За это сообщение автора поблагодарили: trud (2).
Старый 13.10.2015, 14:04   #4  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1853 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от trud Посмотреть сообщение
а вот с покрывающимися индексами в 2012 сделали большую засаду, независимо от указанного списка полей выбирается RecId, неизвестно как бороться с этим
Назначать кластерным индекс по RecId
__________________
-ТСЯ или -ТЬСЯ ?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
axforum blogs: Квест: Подружим Dynamics Ax 2009 Sp1 RU7 c SharePoint Foundation 2010 Blog bot DAX Blogs 4 16.10.2017 17:50
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 15 Blog bot Dynamics CRM: Blogs 1 10.02.2016 10:26
atinkerersnotebook: Using PowerPivot to Analyze Dynamics AX Data Blog bot DAX Blogs 1 05.10.2013 07:23
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 12 Blog bot Dynamics CRM: Blogs 0 30.01.2013 01:11
axinthefield: Dynamics AX Event IDs Blog bot DAX Blogs 0 01.03.2011 22:11
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

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

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