0
我一直在想,如果你能幫助我用這個例子來看看在我的數據庫中實現什麼更好。向數據庫添加額外的表格
我有兩個表:
service
---------------------------
id
name
description
price
stock
shipping method
uses
product
---------------------------
id
name
description
price
stock
shipping method
現在我想知道我是否應該引入第三個表,並有三個表像這樣
service
---------------------------
id
sellable_item_id
uses
product
---------------------------
id
sellable_item_id
Sellable_item
---------------------------
id
name
description
price
stock
shipping method
image
,我想問的原因是,我刨成千上萬的服務和產品,並且您可以看到產品只包含可供銷售商品的ID和外鍵。
現在我需要問這是否值得這樣做,因爲我需要將產品和服務分成兩個不同的類別,因此將通過產品和服務搜索完全不同的東西。
在搜索產品時,我無法想象通過可售商品進行查看,然後檢查他們是否是產品或服務是非常有效的。我想這將是更有效的搜索產品,然後提取外鍵鏈接的可銷售項目信息。
再次,更有效率的事情是將可銷售信息放入產品中,但如果數據放在另一張表中,則會導致問題再次出現,因爲它與服務相同。
關於什麼是?是的,我應該複製數據? 如果是這樣,這不會影響表的規範化 – bubblebath
是的,你可以提到三個表,它會影響規範化。但規範化並不總是正確的做法。擁有三張表格將爲僅適用於服務或產品的查詢提供高性能。 – Ragavan
好吧,很酷。所以爲了表現,我應該選擇兩張桌子來獲得最佳表現。如果我去三張桌子,你認爲這會影響表現多少? – bubblebath