Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Вставка во временную таблицу  [new]
SandWorm
Member

Откуда:
Сообщений: 8
Доброе время суток.
Вот такая вот имеется ситуация:
Имеется запрос, результат которого вставляется во временную таблицу.
Сам по себе запрос отрабатывает секунду - две, не больше. При вставке результата в таблицу, время увеличивается до 2х-3х минут :-(((
Таблица перед запросом пустая, состоит из 4-х целочисленных столбцов, запрос возвращает примерно 3100 записей.

Понятное дело, что добавляются дополнительные операции, но не настолько же туго всё должно происходить?
Кто-нибудь встречал такую вот беду?
11 ноя 03, 09:39    [412049]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
Berg
Member

Откуда: Кр-ск
Сообщений: 3480
Может в ней куча тяжелых индексов/триггеров?
11 ноя 03, 09:40    [412051]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
автор писал:
Имеется запрос, результат которого вставляется во временную таблицу.


Ну так покажи нам, что за запрос, что за структура таблицы, в которую вставляешь. А лучше еще самому план выполнения глянуть, чтоб узкое место найти.
11 ноя 03, 09:49    [412067]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
SandWorm
Member

Откуда:
Сообщений: 8
Нифига во временной таблице нет, ни индексов, ни триггеров.
Я даже, в качестве теста, отключал создание первичного ключа, результат тот же. :-(
11 ноя 03, 09:49    [412069]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
А вставка случаем не ч/з курсор? :-)
11 ноя 03, 09:51    [412076]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
SandWorm
Member

Откуда:
Сообщений: 8
Табличка, самая что нинаесть простая
create table #BillAccountLines(
ACCOUNT_ID int,
SERV_ID int,
LINE_ID int,
SUPPL_ID int)

Запрос, повторяюсь, который выбирает в неё данные сам по себе отрабатывает 1-2 секунды. Имеет ли смысл показывать запрос не знаю, там объяснять прийдется ой как долго :-). Но сам он пашет достаточно шустро.
Просто как-то не могу понять в чем связь. Я думаю, в любом случае сначала идёт выборка данных, а затем залив в таблицу, или я ошибаюсь?
11 ноя 03, 09:55    [412082]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
SandWorm
Member

Откуда:
Сообщений: 8
Нет не через курсор, вот часть кода.
insert
#BillAccountLines

select
A.ACCOUNT_ID,
SS.SERV_ID,
BL.LINE_ID,
SS.SUPPL_ID
into #BillAccountLines
from
Accounts A (nolock),
aspGas..Houses GH (nolock),
SumServices SS (nolock),
ServiceConnects SC (nolock),
BillLines BL (nolock)
where
GH.AREA_ID = 207 AND .....
11 ноя 03, 09:56    [412085]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
SandWorm
Member

Откуда:
Сообщений: 8
Ой блин, очепятался там нет второго insert-а

т.е. конструкция

Insert ....
select....
11 ноя 03, 10:04    [412098]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Запрос с двух баз записи собирает, я так понял. Торозит тока этот конкретный запрос на ставку во временную таблицу или все запросы с tempdb притормаживают? А если заменить на переменную типа Table результат тот же? Планы выполения сравнивал?
11 ноя 03, 10:09    [412102]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
SandWorm
Member

Откуда:
Сообщений: 8
При вставке в Table тоже тормозит, может, копать надо где-нить в дисковой системе на или системных установках например?
11 ноя 03, 12:08    [412426]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
Crimean
Member

Откуда:
Сообщений: 13148
А ты уверен, что запрос возвращает те же типы данных, которые ты принимаешь? Очень часто неявное преобразование типов ТАК тормозит!
11 ноя 03, 12:15    [412453]     Ответить | Цитировать Сообщить модератору
 Re: Вставка во временную таблицу  [new]
SandWorm
Member

Откуда:
Сообщений: 8
Абсолютно уверен. Запрос возвращает целочисленные значения.
12 ноя 03, 05:49    [413787]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить