我開發一個Web應用程序,用戶可以創建以下資源/內容全部資源VS多張表:一個MySQL表爲每個資源
Events | Music | Posts | Classifieds
他們有很多共同的領域,如:
created_date | title | desc | user_id
現在我想知道我是否應該爲每個內容創建單獨的表,或者他們都保存在一個表中,有type_id
外鍵,它指向一個content_type
表。當然,一些不同的領域將在那裏,只有特定的內容類型使用,對於那些不使用這些領域,我可以留空。
對於每種內容類型而言,數據看起來更加有組織,使用單獨的表格,但在所有表格中搜索關鍵字正變成一場噩夢(連接,聯合等)。如果它只是一張表,搜索將非常容易。
我需要用戶能夠使用關鍵字搜索所有內容。他還可以搜索特定內容,因爲我會在type_id
字段上執行WHERE
子句。
我不知道每種方法的優點/缺點,但是如果人們能夠給我建議,以免我做出錯誤的決定,並且必須從頭開始重做所有事情,我將不勝感激。
所有取決於如何你將要使用這些數據。 – Pitchinnate
@nathanhayfield我只是不能合併來自不同表格的搜索結果。如果我只是做一個簡單的數組與搜索結果合併,那麼最終的結果將不會在他們正確的排名。他們將根據應用程序首次搜索內容的順序進行排序。我需要在所有內容中混合使用最相關的結果。 – WebNovice
在我看來,他們應該在一個表中有一個相關的content_type表,但是如果不知道完整的模式,很難說。 – SomeSillyName