我应该使用什么关系让一名足球运动员查看他的所有比赛?
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)
);
作为一名足球运动员,我想查看我参加过的所有比赛,但一场比赛不应该跟踪哪个球员参加了那场比赛。
正如标题所说,我应该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)
);