我应该使用什么关系让一名足球运动员查看他的所有比赛?

what relation should I use to get 1 soccer player to view all his matches?

作为一名足球运动员,我想查看我参加过的所有比赛,但一场比赛不应该跟踪哪个球员参加了那场比赛。

正如标题所说,我应该database-relation使用什么?

假设您有一个玩家 table 和一场比赛 table,我会持有第三个 table 来映射两者之间的关系。这个 table 将保存玩家 ID(玩家 table 的外键)、比赛 ID(比赛 table 的外键)以及两者的组合首要的关键。它还可以保存一些额外的信息,比如球员何时上场以及我们何时下场(例如,通过红牌或通过替换)。

CREATE TABLE player (
    id INT PRIMARY KEY,
    -- other player details
);

CREATE TABLE match (
    id INT PRIMARY KEY,
    -- other match details
);

CREATE TABLE player_matches (
    player_id INT,
    match_id INT,
    minute_on INT NOT NULL DEFAULT 0,
    minute_off INT,
    CONSTRAINT player_matches_pk PRIMARY KEY (player_id, match_id),
    CONSTRAINT fk_player FOREIGN KEY (player_id) REFERENCES player(id),
    CONSTRAINT fk_match FOREIGN KEY (match_id) REFERENCES match(id)
);