У меня есть следующая структура таблицы
Table1 Table2 Table3
--------------------------------
sId sId sId
name x y
x1 x2 x3
Я хочу удалить из таблицы 1 все записи, у которых нет совпадающих записей в таблице 3 на основе sId, и если sId присутствует в таблице 2, то не удаляйте записи из таблицы 1. В таблице 1 содержится около 20,15 и 10 миллионов записей , table2 & table3 соотв.
- Я сделал что-то вроде этого
Delete Top (3000000)
From Table1 A
Left Join Table2 B
on A.Name ='XYZ' and
B.sId = A.sId
Left Join Table3 C
on A.Name = 'XYZ' and
C.sId = A.sId
((Я добавил индекс по идентификатору, но не по имени.))
Но это занимает много времени, чтобы удалить записи.
Есть ли лучший способ удалить миллионы записей?
Заранее спасибо.