Цитата:
Сообщение от
Владимир Максимов
Что значит "с чем"? Сам же и ответил - отличается больше чем на неделю.
Оптимизатор сервера пришел к выводу, что получить эту выборку будет быстрее, если сканировать не индекс, а саму таблицу. Ведь в данном случае "оптимизация" - означает "ускорение". Использование индекса - далеко не всегда приводит именно к "ускорению".
В том-то и дело, что это приводит к конкретному замедлению. Если указать в запросе индекс явно
X++:
SELECT * FROM TABLE(INDEX( ))
WHERE SALESDATE >=
то запрос выполняется за минуту (при любом значении даты), если не указывать, то несколько часов. Так как указать индекс явно из аксапты не получается (по крайне мере я не знаю как это сделать через Query), то и приходится думать почему оптимизатор принимает решение, приводящее не к ускорению, а к замедлению и как его заставить этого не делать.