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

Откуда: Королевство
Сообщений: 902
Привет всем,

подстажите пож-ста, при прочих равных какой заспрос выполниться быстрее?

UPDATE ACCOUNTS
SET lastactivity = NULL
WHERE EXISTS (SELECT 1
FROM SL_ACTIVITY_PURGE_TMP
WHERE id = ACCOUNTS.lastactivity)


UPDATE t1
SET lastactivity = NULL
FROM
ACCOUNTS t1
JOIN
SL_ACTIVITY_PURGE_TMP t2
ON
t2.id = t1.lastactivity


UPDATE ACCOUNTS
SET lastactivity = NULL
where lastactivity in (select id from SL_ACTIVITY_PURGE_TMP)
9 июн 09, 12:44    [7280339]     Ответить | Цитировать Сообщить модератору
 Re: Какой запрос выполниться быстрее?  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Планы и логические чтения сравните и узнаете...
9 июн 09, 12:51    [7280374]     Ответить | Цитировать Сообщить модератору
 Re: Какой запрос выполниться быстрее?  [new]
Nikulin
Member

Откуда: Королевство
Сообщений: 902
посмотрел ниче не понял... :-(
9 июн 09, 12:53    [7280393]     Ответить | Цитировать Сообщить модератору
 Re: Какой запрос выполниться быстрее?  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Nikulin
посмотрел ниче не понял... :-(
Ну так покажите здесь.
9 июн 09, 12:53    [7280398]     Ответить | Цитировать Сообщить модератору
 Re: Какой запрос выполниться быстрее?  [new]
EvAlex
Member

Откуда: Israel
Сообщений: 995
1 и 2 в теории...
9 июн 09, 12:55    [7280415]     Ответить | Цитировать Сообщить модератору
 Re: Какой запрос выполниться быстрее?  [new]
Crimean
Member

Откуда:
Сообщений: 13148
формально это все 3 разные запросы :) но в частных случаях могут работать одинаково. в некоторых случаях могут даже дать разные результаты
потенциально EXISTS - самый "стабильный" из всех
но вариант с JOIN может выиграть если в присоединяемой таблице поле из ON уникально
9 июн 09, 12:55    [7280424]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить