Hello, Yuri!
Yuri Grabar wrote:

> Дим, я что-то не понимаю при чем тут "на глазок". По селективности индекс по 
> DOC_DATE почти в 100 раз выгоднее, чем по DOCUMENT_ID при прочих равных 
> (гистограмм-то нету). По твоим выкладкам 20% сводит его к "почти в 5 раз 
> лучше". 

нет. выборка на равенство в среднем приведет к выборке 1/30 записей.
А between оценивается как выборка 1/5 записей. То есть between
хуже равенства, даже когда селективность отличается на 2 порядка.
Причем, согласно моим подсчетам, between в твоем случае будет
эффективнее равенства только если
(при среднем распределении данных)

разных значений дат действительно 2076, каждая дата
упоминается 481 раз, и between выбирает интервал равное
или меньше 70 разным датам.
В остальных случаях between хуже равенства, для
твоих значений числа записей и селективности индексов.

>Тем не менее индекс по DOCUMENT_ID (в 5 раз более "плохой") 

да. с этим никто не спорит. он на самом деле в 70 раз
"более плохой", а не в 5.

-- 
Dmitri Kuzmenko, www.ibase.ru, (495) 953-13-34


--~--~---------~--~----~------------~-------~--~----~
-~----------~----~----~----~------~----~------~--~---

Ответить