invoice_data
考虑一个包含 12 年以上发票数据的表格。这些数据每天都会被加载到一个多维数据集中。每次加载,最新的 2 年都会被删除,invoice_data
最近 2 年的数据会再次被实时系统导入。(我们这样做是因为旧数据集中的值也可能发生变化)
该delete
语句大约需要 15 分钟,但我们不能使用 a truncate
,因为我们必须加载整个 12 年,这将花费更长的时间。
问题:
invoice_dat
像这样拆分大桌子是不是一个好设计
invoice_data_old
, 其中包含years < actual year - 2
invoice_data_new
, 其中包含years >= actual year -2
这样一来,我们可以使用truncate
oninvoice_data_new
而不需要使用delete
语句?
有没有更好的方法?
我正在使用 SQL SERVER 2008,但我认为这是一个普遍的问题。