У меня есть следующий оператор SQL, который я хотел бы сделать более эффективным. Просматривая план выполнения, я вижу, что есть кластерное сканирование индексов на @newWebcastEvents. Есть ли способ сделать это в поисках? Или есть другие способы, которыми я могу сделать ниже более эффективным?Индексная проверка в операторе обновления SQL
declare @newWebcastEvents table (
webcastEventId int not null primary key clustered (webcastEventId) with (ignore_dup_key=off)
)
insert into @newWebcastEvents
select wel.WebcastEventId
from WebcastChannelWebcastEventLink wel with (nolock)
where wel.WebcastChannelId = 1178
Update WebcastEvent
set WebcastEventTitle = LEFT(WebcastEventTitle, CHARINDEX('(CLONE)',WebcastEventTitle,0) - 2)
where
WebcastEvent.WebcastEventId in (select webcastEventId from @newWebcastEvents)
его только временную таблицу и не только первичный ключ. Стол небольшой, только до 15 строк. таблица, которую я обновляю, может содержать тысячи строк. – user3284707
В WebcastChannelWebcastEventLink имеется около 5000 строк, из них в таблице отображено около 15 строк этой таблицы. @newWebcastEvents – user3284707