我正在使用C#開發使用ASP.Net開發的Web應用程序。 Allong具有其他功能,可以讓用戶將各種項目添加到他們的個人清單中。有關上述功能的數據庫表是:如何計算添加特定項目的時間?
-------------------------
| Item |
-------------------------
| ItemId (Primary Key) |
| . . . & other attribs |
-------------------------
---------------------------
|List |
---------------------------
|ListId (Primary Key) |
|. . . and other attribs |
---------------------------
既然有許多人以上兩個表之間一對多的關係(即一個項目在多個列表添加一個列表包含很多項目),所以我創建爲第三個表
---------------------------------
|ItemList |
---------------------------------
|ItemId (Foreign Key) |
|ListId (Foreign Key) |
|. . . and other Attributes |
---------------------------------
現在,我需要跟蹤某個項目被添加到列表中的次數。爲了獲得這個我有兩個可能的選擇
- 我在項目表中添加一個新的屬性,並增加一個值,每次當一個特定的項目被添加到某個列表。
- 第二個選項是,每當我需要知道多少 次特定的項目添加到列表中,然後我將適用於 SELECT COUNT查詢(用where子句)在ITEMLIST表
請建議哪種方法更好,爲什麼?我更傾向於第二種方法,關於效率我猜都有相同的效果