Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database design 足球比赛数据库结构_Database Design - Fatal编程技术网

Database design 足球比赛数据库结构

Database design 足球比赛数据库结构,database-design,Database Design,我正在设计一个足球赔率数据库 我认为: 身份证 霍梅德 阿瓦伊德 赔率 和一个表存储所有足球队名称呼叫团队: 身份证 名字 我想要一个显示以下内容的查询: 身份证 家名 阿瓦尼 赔率 有没有办法提出这样的问题? 或者我需要将团队表拆分为两个表,如:HomeTeam、AwayTeam?一个名为team的表就可以了。home和away ID是引用team表中主键ID的外键 您提议的设计未规范化。您不应该重复数据,因为如果您有单独的主客场团队表,则必须重复数据 create table team (

我正在设计一个足球赔率数据库

我认为:

身份证 霍梅德 阿瓦伊德 赔率

和一个表存储所有足球队名称呼叫团队:

身份证 名字

我想要一个显示以下内容的查询:

身份证 家名 阿瓦尼 赔率

有没有办法提出这样的问题?
或者我需要将团队表拆分为两个表,如:HomeTeam、AwayTeam?

一个名为team的表就可以了。home和away ID是引用team表中主键ID的外键

您提议的设计未规范化。您不应该重复数据,因为如果您有单独的主客场团队表,则必须重复数据

create table team (
    id int not null,
    name varchar(20) not null,
    primary key(id)
);

create table odds (
    home_id int not null,
    away_id int not null,
    odds varchar(20) not null,
    primary key(home_id, away_id),
    foreign key(home_id) references team(id),
    foreign key(away_id) references team(id)
);

select h.name, a.name, o.odds
from odds as o
join team as h
join team as a
on o.away_id = a.id
on o.home_id = h.id
where h.name = 'home team name' 
and a.name = 'away team name'

如果我使用一个表组,您能帮助我吗?查询字符串是什么样子的?它工作得很好,非常感谢。