Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вопрос по быстродействию кода в MS SQL 2000 ... какой вариант быстрее? / 2 сообщений из 2, страница 1 из 1
21.12.2001, 09:59
    #32019533
XDefender
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по быстродействию кода в MS SQL 2000 ... какой вариант быстрее?
Что будет быстрее выполнятся, какой код (В тригере таблицы Factures на UPDATE):


UPDATE Factures
set Locdescarcare=(select top 1 Town_ID from Firms FI Where FI.ID=I.Firm_ID)
FROM INSERTED I INNER JOIN Factures F ON F.ID=I.ID
WHERE EXISTS (SELECT TOP 1 ID FROM DELETED D WHERE D.ID=I.ID and D.Destinator<>I.Destinator)


или


DECLARE @TMP1 TABLE (ID Int)

insert into @TMP (ID)
select ID from Inserted I WHERE Exists (select top 1 ID from Deleted where D.ID=I.ID and I.Firm_ID<>D.Firm_ID)

UPDATE Factures
set Locdescarcare=(select top 1 Town_ID from Firms FI Where FI.ID=Factures.Firm_ID)
WHERE Factures.ID in (select ID from @TMP)


Нужно учитывать, что в большинстве случаев (в 95% в INSERTED будет только одна запись)
Ели есть другие варианты?
...
Рейтинг: 0 / 0
21.12.2001, 10:39
    #32019548
MadDog
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по быстродействию кода в MS SQL 2000 ... какой вариант быстрее?
Можно просто запустить и проверить. Если под рукой есть SQL Server.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вопрос по быстродействию кода в MS SQL 2000 ... какой вариант быстрее? / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]