**в.1 TRUNCATE удаляет все мгновенно и не раздувает лог транзакций** USE Viatec_UT_mamch; TRUNCATE TABLE _InfoRg29706; **в.2 Удаляем батчами по 100 000 строк чтобы не раздуть лог транзакций** USE Viatec_UT_mamch; DECLARE @BatchSize INT = 100000; DECLARE @Deleted INT = 1; WHILE @Deleted > 0 BEGIN DELETE TOP (@BatchSize) FROM _InfoRg29706 WHERE _Fld29707 < DATEADD(MONTH, -3, GETDATE()); SET @Deleted = @@ROWCOUNT; RAISERROR('Удалено строк: %d', 0, 1, @Deleted) WITH NOWAIT; WAITFOR DELAY '00:00:01'; -- пауза 1 сек между батчами END; PRINT 'Готово!'; Звільнення місця DBCC SHRINKDATABASE (ім'я_бази);