/ / mysqlリンク変数複数のデータと1つのID [クローズ] -php、mysql

mysqlのリンク変数複数のデータと1つのID [閉じる] - php、mysql

学校での私の論文では、PHPのウェブサイトを作成しています。魔女はファンタジーフットボールのサイトに基づいています。ローカルホストサーバーで実行されます。

MySQLデータベースを使用していますが、このデータベースのレイアウト方法を見つける際の問題。私はすでにプレーヤー(ID、名前、チーム、ポジション)のテーブル、ユーザーテーブル(ID、名前、パスワード、チーム内のIDプレーヤー1、IDプレーヤー2、IDプレーヤー3、IDプレーヤー4)、および一致するテーブル(ID 、日付、ホームチーム、アウェイチーム、結果)。しかし、その試合で誰が得点したかを追加したいと思います。 2人がスコアを付けることがありますが、5人がスコアを付けることもあるため、これを行うにはどうすればよいですか?どうすればよいですか?

すべての助けは本当にありがたいです。

回答:

回答№1は2

あなたはplayers_who_scoredリンクテーブルとの多対多の関係を表現したいと思うでしょう。これは次のようになります。

CREATE TABLE players_who_scored (
player_id INT NOT NULL,
FOREIGN KEY (player_id) REFERENCES players(id),
match_id INT NOT NULL,
FOREIGN KEY (match_id) REFERENCES matches(id),
PRIMARY KEY (player_id,match_id)
);

更新:

ゲーム内のプレーヤーに関するすべての統計を追跡する場合は、次のような列を追加できます。

CREATE TABLE player_stats (
goals INT,
assists INT,
yellow_cards INT,
player_id INT NOT NULL,
FOREIGN KEY (player_id) REFERENCES players(id),
match_id INT NOT NULL,
FOREIGN KEY (match_id) REFERENCES matches(id),
PRIMARY KEY (player_id,match_id)
);