sql - 关系代数 - 除法

标签 sql database-design relational-database relational-algebra

如果我有下表,并且我在关系代数中执行 R1/R2,结果会是 A 值为 1 和 3 的表吗?我有点困惑,因为我知道 3 会是一个结果,因为它同时包含 5 和 1,但结果 1 除了匹配值之外还有 B 的附加值,所以这也会包含在内,为什么?

     R1          R2
    +---+---+   +---+
    | A | B |   | B |
    |---|---|   |---|
    | 1 | 1 |   | 5 |
    | 1 | 2 |   | 1 |
    | 1 | 3 |   +---+
    | 1 | 4 |
    | 2 | 3 |
    | 2 | 4 |
    | 3 | 5 |
    | 3 | 1 |
    | 1 | 5 |
    | 5 | 7 |
    | 5 | 8 |
    +---+---+

最佳答案

在关系数据库中,划分定义为:
R1(Y,X) 除 R2(X) = R1[Y] 减 ((R1[Y] 乘以 R2) 减 R1)[Y]

请记住,R1[Y] 是“PROJECT R1 over Y”的另一种形式。
所以结果是 {1,3}

关于sql - 关系代数 - 除法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14103297/

相关文章:

mysql - 关系数据库中的链修改

sql - 数据库设计中的多对多关系

database-design - 数据库设计问题-存储国际人士的姓名

mysql - 在MySQL中存储 "irregular"数据

MySQL 具有多对多关系的多重联接

sql - 无法更改或关闭 postgres 日志记录

mysql - 如何确定 WHERE 子句的哪个条件失败?

mysql - MySQL != 和 <> 有什么区别

sql - 使用PL/SQL函数获取员工薪酬记录

mysql - 如何在subs查询mysql中添加查询限制