เนื่องจากทุก transaction จะต้องถูกเขียนลง log ก่อนที่จะลง data file ดังนั้นหาก transaction มีขนาดใหญ่ เช่น ลบหลาย record ขนาดรวม 5GB ก็จำเป็นต้องเขียน logs ขนาด 5GB แม้ว่าจะเป็น simple recovery model ก็ตาม นอกจากนี้จะทำให้เกิด I/O สูงมากด้วย ดังนั้นแนะนำให้ซอยเป็น transaction ย่อยๆ โดยใช้ TOP และ @@ROWCOUNT มาช่วยทำงานครับ ตัวอย่างตามข้างล่าง
DECLARE @Done BIT
SET @Done = 0
WHILE @Done = 0
BEGIN
DELETE TOP (20000) -- reduce if log still growing
FROM SomeTable WHERE SomeColumn = SomeValue
IF @@ROWCOUNT = 0
SET @Done = 1
CHECKPOINT -- marks log space reusable in simple recovery
END