我有一個SQL Server 2012標準數據庫(恢復模型是「簡單」)以下PipelineArchives
表:SQL服務器 - 刪除行高效
表持有Body
列歸檔數據。隨着時間的推移,這種增長現在已經包含了11,914行,總共有53gb的數據。我想要執行一個查詢,刪除當前日期之前的所有具有CreatedOn
值的行 - 3個月。
我試圖運行
DELETE FROM PipelineArchives
WHERE CreatedOn < MyDate
當MyDate
條件的結果在幾行,那麼查詢執行在幾秒鐘內從SSMS確定。但是,增加229行的日期需要30秒。
是否有更有效的方法來刪除行?
對不起 - 什麼是EAV? –
將>當前日期 - 3個月的行復制到另一個表中。刪除原始表,重命名.... –
[EAV =實體屬性值](https://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%93value_model) –