首页 > 解决方案 > SQL 表上说明的关系示例(在数学意义上/关系代数中)

问题描述

我有一个带有标题“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 | John | London”) - 该配对的第二部分(A 集)总是隐含的?

我认为在我的情况下它是三元关系,我有三组(IS 集、名称集、城市集)并且表头不应被视为谈论关系的集合(使用表头是因为所有 3 元组都会根据标题订购)。所以二进制关系与我的表完全无关。我对吗?

证明链接

标签: sqldatabaserelation

解决方案


不要将数学中的二元关系与数据库中的二元关系混为一谈。在 DB 概念中,二元关系指向两个不同实体之间的关系,其中数学中的二元关系与集合论有关。看到这个

尽管它们不同,但它们之间却有着密切的关系。您可以检查数据库专业人员的应用数学


推荐阅读