Optimization

Count() 與保留總計數的列

  • December 21, 2011

可能重複:

儲存與計算聚合值

假設我有一張充滿照片的表,每張照片都有一個作為專輯表外鍵的專輯 ID。要獲取每個相冊中的照片數量,我可以簡單地在 photo 表上執行 Count(),其中 albumId = 相冊表中的 id。然而,為了完成同樣的任務,我可以在相冊表中保留一個 photoCount 列。是否值得在專輯表中保留額外的列而不是使用 Count() 函式?

您還可以考慮物化視圖(儘管並非所有 RDMS 都支持此功能)

這取決於您的應用程序。如果您經常使用照片的數量,最好保留數量,這樣您就不必每次都執行查詢。但另一件事是,如果您頻繁添加新照片,通過儲存照片的數量,您將不得不每次更新它。

引用自:https://dba.stackexchange.com/questions/9572