2017-01-17 59 views
0

使用php和mysql進行網上商店的使用。當在每個類別的產品部分,我需要一個具有所有適用品牌和產品數量的導航。我的問題是,類別和產品與產品和兼容品牌是多對多關係。因此,查看某個類別時,樸素的方法是獲取所有產品(通過products_categories表),每個提取所有兼容品牌(通過products_brands表)並對其進行計數。從我的研究中我也發現,在這種情況下,多個表上的連接是昂貴的,因此需要4個連接。我的另一個想法是創建表來保存這些信息,但是當添加/刪除類別,產品,品牌等時,這需要額外的操作,並可能以維護噩夢結束。有更好的方法嗎? 謝謝計算多個多對多連接表上的結果的最佳方法

回答

0

我不知道你是否可以通過給定的設計逃脫連接。您可以通過在Products_Categories和Products_Brands之間創建視圖來稍微改進。這將允許您從不同的環境(產品,類別,品牌)更好地優化查詢這些數據的方式。而不是加入主表進行描述,我會分別查詢這些表,並在其上放置緩存策略,並讓客戶處理帶說明的整理ID。希望這是有道理的。

相關問題