1
A
回答
3
的*
应该更正确地写×
,因为它代表一个Cartesian product。该操作返回从每个操作数连接元组的所有元组的集合。联接将笛卡尔积过滤为仅限于具有指定属性上的匹配值的那些元组。如果连接是自然连接,如在您的示例中,匹配的属性是具有相同名称的连接。
例如,给定以下两个关系R
和S
如图所示:
R (a, b, c) S (b, c, d)
(1, 2, 3) (2, 7, 9)
(2, 4, 6) (5, 3, 4)
(3, 6, 9) (2, 3, 6)
的笛卡尔乘积R × S
是:
(R.a, R.b, R.c, S.b, S.c, S.d)
(1, 2, 3, 2, 7, 9 )
(1, 2, 3, 5, 3, 4 )
(1, 2, 3, 2, 3, 6 )
(2, 4, 6, 2, 7, 9 )
(2, 4, 6, 5, 3, 4 )
(2, 4, 6, 2, 3, 6 )
(3, 6, 9, 2, 7, 9 )
(3, 6, 9, 5, 3, 4 )
(3, 6, 9, 2, 3, 6 )
自然连接R ⨝ S
是过滤为仅元组,其中产品在b
和c
值匹配:
(a, b, c, d)
(1, 2, 3, 6)
的加入R ⨝b S
是过滤,只有在b
值匹配元组的产品:
(R.a, b, R.c, S.c, S.d)
(1, 2, 3, 7, 9 )
(1, 2, 3, 3, 6 )
相关问题
- 1. 设置SBT依赖关系时,%和%%运算符会做什么?
- 2. perl运算符“|| =”做什么?
- 3. 什么+运算符做CSS
- 4. “+ =”运算符是做什么的?
- 5. HAML - “!=”运算符是做什么的?
- 6. php运算符“ - =”是做什么的?
- 7. ^运算符是做什么的?
- 8. =>运算符是做什么的?
- 9. '&='和'=&'运算符是做什么的?
- 10. - =运算符是做什么的?
- 11. ==〜运算符是做什么的?
- 12. ^运算符是做什么的?
- 13. RA运算符差异 - 关系代数
- 14. 关系代数运算
- 15. 在提供的C#代码中,+ =运算符是做什么的?
- 16. 为什么加法运算比乘法运算更快?
- 17. 为什么我的重载乘法运算符无法识别?
- 18. 重载乘法运算符
- 19. Perl中的表示法 - || =运算符是做什么的?
- 20. 什么是“?”。运算符在C#中做什么?
- 21. //和||是什么?运算符在Perl中做什么?
- 22. 什么是按位AND运算符&做什么?
- 23. 逻辑运算符什么都不做的名字是什么?
- 24. 运算符|是什么?对boost :: la中的vec3做些什么?
- 25. 关系代数中允许乘法吗?
- 26. “| =”运算符在C#中做什么?
- 27. +运算符在cout中做什么?
- 28. 运算符`。*`在matlab中做什么?
- 29. '/运算符在MATLAB中做什么?
- 30. 运算符| =在JavaScript中做什么?
书“数据库系统基础” - 第6版用乘号*作为自然连接的一种替代符号第159页(第6版,ISBN 0136086209)。 – pln