Показать сообщение отдельно
Старый 15.12.2011, 01:36   #14  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Но это еще не все...
Я уже много лет все думал на что же влияют индексы во временных таблицах.

Используются ли они для поиска данных?
Или только для контроля уникальности ключа?
Или вообще не используются?

У таблицы TmpAccountSum в стандартной поставке есть один индекс. Первым полем там идет AccountNum, а дальше еще несколько полей, но это не важно. Делаю ему Enanbled = "No" (т.е. отключаю).

На 40,000 записей
==============
Не дождался. Спать хочу.
Время вставки было 9.03


Вернусь на 4,000 записей
====================
Было:
1.08 - время вставки
4001 - результат выборки
0.17 - время выборки вложенным циклом

Стало:

0.86 - Вставка убыстрилась. То, что наличие индекса на таблице увеличивает время вставки, характерно для реляционных и индексно-последовательных баз данных. Временные таблицы тут не выделяются из общей тенденции.
4001 - Дождался
129.63 - Что-то мне это напоминает... кажется на результат джоина похоже .

В общем, индексы на временной таблице:
а) не фикция
б) ускоряют доступ к данным как и в клссических СУБД
в) почему-то не используются при джоинах
__________________
С уважением,
glibs®