Hello, Dmitry! Dmitry Yemanov wrote:
>>по DOC_DATE - 0,00048169 >>по FROM_ID - 0,00017614 >>по DOCUMENT_ID - 0,03333333 > > С точки зрения стоимости, выигрывает DOCUMENT_ID. не понял. у него же селективность ХУЖЕ на 2 порядка, чем у индекса по DOC_DATE. При этом из-за DOCUMENT_ID = 2 он будет использован в пику DOC_DATE between ?DF and ?DT ? Давай посчитаем. 1 миллион записей. selectivity = 1/(Keys - TotalDup) то есть, для селективности 0.033 это примерно 30 разных значений. каждая группа по 33 одинаковых ключей (если в среднем). Для селективности 0.00048 это примерно 2076 разных значений. Каждая группа по 462 значения (в среднем). то есть, DOCUMENT_ID =2 будет эквивалентен doc_date between если он выбирает примерно 70 таких групп, или примерно 1/30-ую от всех ключей. Ну.... теоретически может быть ... Во что оценивается between в 2.0 ? -- Dmitri Kuzmenko, www.ibase.ru, (495) 953-13-34 --~--~---------~--~----~------------~-------~--~----~ -~----------~----~----~----~------~----~------~--~---

