我有許多一對多關係通過表「farmer2crop
」鏈接,鏈接農民作物種類(例如水稻,小麥,玉米,調味品等)多對多關係? (子類查找)
例如
FARMER2CROP
f2c_id
farmer_id
crop_id
然而,一些農作物需要進一步的子類別查詢,例如,香料(小茴香,辣椒等)
部分我認爲所有的香料子類型應該是莊稼表的一部分,也許應該有一個父類別,但客戶希望香料是次要的查找,大多數作物沒有父類型。
所以我可以有一個第三級多到多表連接到farmers2crops:
FARMERS2CROPS2SPICES
f2c_id
spice_id
但是,這似乎有點令人費解,是否有更好的設計在這裏的任何建議 - 或者這是最好的交易關閉?
在此先感謝。
這不是一個折衷,這是[正常化](http://en.wikipedia.org/wiki/Database_normalization)。 – 2012-03-09 11:17:34
我同意 - 我只是想知道這是最好的方法,還是我應該更實用。 – 2012-03-09 11:39:25
我會考慮非規範化數據的唯一原因是,如果存在性能問題(請考慮數據倉庫)。您可以創建VIEWS ad-infinitum以最喜歡的表格形式呈現數據,但我不會爲此更改底層結構。 – 2012-03-09 12:29:09