Quantcast
Channel: SQL.ru: Microsoft SQL Server
Viewing all articles
Browse latest Browse all 7251

Как можно ускорить выполнение процедуры?

$
0
0
Здравствуйте.

Собственно, сабж. MSQL. Есть исходная таблица с полями hash, id, value, date. Хочу заполнить две другие таблицы -

1. counter, value, date (counter - ключ)
2. counter, id, hash, date.

Для заполнения использую следующую процедуру:
1. Беру из исходной таблицы каждую строчку.
2. Проверяю есть ли в 1 табл. такое значение, если да, то обновить значение date, если нет, то вставить в 1 табл. и выполнить вставку во вторую табл. counter, id, hash, date, если таких значений нет, если же есть, то обновить date.
3. Удаляю строчку.

Данная процедура работает со скоростью 40-50 строчек в секунду. В исходную таблицу попадает по 12-15 тыс. строк. Примерное время работы 5-7 минут.

Есть индекса для всех таблиц. Как можно ускорить выполнение?

Viewing all articles
Browse latest Browse all 7251

Trending Articles