示出的上SQL表的关系(在数学意义上/关系代数)的实施例

问题描述 投票:0回答:2

我有一个头“ID”(整数),“姓名”(字符串),“地址”(字符串)的表。

+---------------------+
|  ID | Name  | City  |
+---------------------+
| 1  | John  | London |
| 2  | Mary  | Paris  |
| 3  | Cris  | Tokio  |
+---------------------+

能否请你帮我证明表是怎样一个关系?

二元关系是一组有序对,每一对是从集合A的映射来设置B(如A = {1,2,3} B = {A,B} => {1A,2A,2B,3A}是二元关系)

我想表头(组属性名称的)形成第一组对(A如实施例以上),但什么是在我的情况下,第二组?什么是一个3元组(“1 |约翰|伦敦”),如果我需要对(和元组是不是一对) - 即对(A组)的第二部分只是一直暗指?

我想在我的情况下,它是一个三元关系,我有三套(集国际空间站名称集,集城市)和表头不得被视为一组谈论关系(头被使用,因为所有的三元组会根据报头进行排序)。所以,二元关系是完全无关我的表。我对吗?

prooflink

sql database relation
2个回答
0
投票

不要混合在数学与数据库中的二元关系二元关系。在DB概念的二元关系,其中的点在数学二元关系是建立理论相关的两个不同实体之间的关系。 See this

虽然他们是不同的它们之间存在着密切的关系。您可以查看应用数学数据库专业人士


0
投票

1)对于表头:

关系是一组(有序)对:

{ (ID, Integer), {Name, String}, {City, String) }

2)对于表体

关系是一组(有序)对:

{ (ID, 1), (Name, John), (City, London),  
  (ID, 2), (Name, Mary), (City, Paris), 
  (ID, 3), (Name, Cris), (City, Tokio) }

例如这三对{ (ID, 1), (Name, John), (City, London) }意味着一个元组(3元组=记录=表格行)。更确切的元组应当是一组(有序)三人间,没有设置对:{ (ID, Integer, 1), (Name, String, John), (City, String, London) },但每当我们看到“ID”我们总是知道它是整数(域=数据类型),所以域省略/类型,所以我们对说话(而不是谈论三胞胎)。

因此,一个(标准化)表可以是analagous到代数二元关系和二元关系被定义为一组有序对。

我只是不是100%确定只要这种relaltion =表对集合的关系应包括对集合工会1和2(套PIRS的标头和身体的)。

© www.soinside.com 2019 - 2024. All rights reserved.