在這種情況下,我有:球員,幻想足球聯賽(社區)和結果。「幻想足球」數據庫中的結果表的正確數據庫結構
1個用戶可以成爲許多幻想聯盟的一部分。
我的當前結構:
create table players (id int, email, display_name)
create table communities (id int, name, password, admin_email)
create table community_players (community_id, player_id)
我現在需要創建一個結果表中的每個社區。我在想:
create table results (player1_id, player1_points, player1_goals_scored, player2_id, player2_points, player2_goals_scored, date, community_id)
我擔心的是這張桌子最終會變得很大。所以當我去查詢統計數據時(即誰擊敗了誰,進球數量,進球數量等),結果會非常慢。
我的想法是:
我應該「上即時」爲創建的每個社區建立一個成績表?
create table results_community_name (player1_id, player1_points, player1_goals_scored, player2_id, player2_points, player2_goals_scored, date, community_id)
爲另一個表中的每條記錄創建表是一個非常糟糕的主意。你現在的結構有什麼問題?你對它的性能和可伸縮性有什麼測量或估計? – David
我不想爲另一個表中的每條記錄創建一個表,只是在數據庫中 - 或者是您的意思? 除了如果我只使用一個表格,我沒有任何測量或估計值,我估計在提取統計數據(例如目標得分)時,它可能會查詢100,000條記錄。 – RDowns
''爲每個社區'即時創建結果表'' - 這是否意味着您不會爲'社區'表中的每條記錄創建一張表?至於記錄數,在一個沒有任何數字的表中有100,000條記錄是相當低的數據量。 – David