ms-access 计算字段性能
ms-access Calculated field performance
我的 table 包含各种 "Date" 信息,例如 "OrderDate"、"ProductionDate"、"ControlDate"、"SellDate"。在查询中,我想要一个字段 "Status",它表示类似 "Orderd"、"Produced"、"Controlled"、"Sold" 的内容。我可以从各种日期中获取状态信息(例如,如果有 ProductionDate 但没有设置 ControlDate,则 Status 为 "Produced")。日期字段和统计数据的数量保证永远不会改变。日期更改很少见,而查询却一直在发生。该查询不仅包含一个这样的派生字段,而且包含大约五个。
与在每次日期更改时设置的 table 中创建额外的 Status 字段相比,在查询中使用 VBA 例程计算 Status 对性能的影响有多大?
或者这个设计基本上是有缺陷的?
就性能影响而言,与在查询中尝试创建该字段 "on the fly" 相比,如果您更新 table 中的单个记录,您会发现影响要小得多。问题是;我们谈论的数据有多少?吐出报告需要多长时间?我会选择 50/50;我认为这两种方法都没有错或更糟,但如果您希望尽可能多地节省时间,那么我会向 table 添加一个字段,并在其中一个日期为 [= 时更新该字段13=]。后端编码更多,但更新需要几毫秒 运行 而在查询中创建字段需要分秒(或可能是几秒)。
我的 table 包含各种 "Date" 信息,例如 "OrderDate"、"ProductionDate"、"ControlDate"、"SellDate"。在查询中,我想要一个字段 "Status",它表示类似 "Orderd"、"Produced"、"Controlled"、"Sold" 的内容。我可以从各种日期中获取状态信息(例如,如果有 ProductionDate 但没有设置 ControlDate,则 Status 为 "Produced")。日期字段和统计数据的数量保证永远不会改变。日期更改很少见,而查询却一直在发生。该查询不仅包含一个这样的派生字段,而且包含大约五个。
与在每次日期更改时设置的 table 中创建额外的 Status 字段相比,在查询中使用 VBA 例程计算 Status 对性能的影响有多大?
或者这个设计基本上是有缺陷的?
就性能影响而言,与在查询中尝试创建该字段 "on the fly" 相比,如果您更新 table 中的单个记录,您会发现影响要小得多。问题是;我们谈论的数据有多少?吐出报告需要多长时间?我会选择 50/50;我认为这两种方法都没有错或更糟,但如果您希望尽可能多地节省时间,那么我会向 table 添加一个字段,并在其中一个日期为 [= 时更新该字段13=]。后端编码更多,但更新需要几毫秒 运行 而在查询中创建字段需要分秒(或可能是几秒)。