在**关系代数(Relational Algebra)**中,**笛卡尔积(Cartesian Product)**是一种基本的集合运算,用来把两个关系“完全组合”起来。
设关系
若 ( A \cap B = \varnothing )(属性名不冲突),则:
[ R \times S ]
表示 R 中每一个元组 与 S 中每一个元组 拼接形成的新关系。
结果关系:
| SID | Name |
|---|---|
| 1 | 张三 |
| 2 | 李四 |
| CID | Cname |
|---|---|
| 101 | 数学 |
| 102 | 英语 |
| SID | Name | CID | Cname |
|---|---|---|---|
| 1 | 张三 | 101 | 数学 |
| 1 | 张三 | 102 | 英语 |
| 2 | 李四 | 101 | 数学 |
| 2 | 李四 | 102 | 英语 |
如果 ( R ) 和 ( S ) 有同名字段,如都有 ID:
笛卡尔积是最基础的“无条件的连接”:
[ R \bowtie S = \sigma_{\text{条件}}(R \times S) ]
也就是说:
SELECT *
FROM R, S;
如果你愿意,我也可以帮你画运算树、讲自然连接和笛卡尔积的区别,或用具体考试题来演示。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。