数据库系统原理

发布于:2024-12-06T05:13:00.000000Z

学习人数:1

知识点:350

更新于:2024-12-16T06:59:27.000000Z

关系模型

关系代数运算

重要程度:7 分
<div> <h2>关系代数运算</h2> <p>关系代数是一种形式化的查询语言,用于描述关系数据库中的操作。它主要包括以下几种运算:</p> <ul> <li><strong>并运算 (Union)</strong></li> <li><strong>差运算 (Difference)</strong></li> <li><strong>交运算 (Intersection)</strong></li> <li><strong>笛卡尔积 (Cartesian Product)</strong></li> <li><strong>选择 (Selection)</strong></li> <li><strong>投影 (Projection)</strong></li> <li><strong>连接 (Join)</strong></li> </ul> <h3>1. 并运算 (Union)</h3> <p>并运算用于合并两个关系,并且结果关系包含在两个关系中的所有元组,但重复的元组只出现一次。</p> <p><strong>例题:</strong></p> <pre> R = { (A, B), (C, D), (E, F) } S = { (A, B), (G, H), (I, J) } R ∪ S = { (A, B), (C, D), (E, F), (G, H), (I, J) } </pre> <h3>2. 差运算 (Difference)</h3> <p>差运算用于找出属于一个关系但不属于另一个关系的元组。</p> <p><strong>例题:</strong></p> <pre> R = { (A, B), (C, D), (E, F) } S = { (A, B), (G, H), (I, J) } R - S = { (C, D), (E, F) } </pre> <h3>3. 交运算 (Intersection)</h3> <p>交运算用于找出同时属于两个关系的元组。</p> <p><strong>例题:</strong></p> <pre> R = { (A, B), (C, D), (E, F) } S = { (A, B), (G, H), (I, J) } R ∩ S = { (A, B) } </pre> <h3>4. 笛卡尔积 (Cartesian Product)</h3> <p>笛卡尔积用于将两个关系的所有元组合并成一个新的关系。</p> <p><strong>例题:</strong></p> <pre> R = { (A, B), (C, D) } S = { (X, Y), (Z, W) } R × S = { (A, B, X, Y), (A, B, Z, W), (C, D, X, Y), (C, D, Z, W) } </pre> <h3>5. 选择 (Selection)</h3> <p>选择运算用于从一个关系中挑选满足给定条件的元组。</p> <p><strong>例题:</strong></p> <pre> R = { (A, B), (C, D), (E, F) } σ_A = 'A' (R) = { (A, B) } </pre> <h3>6. 投影 (Projection)</h3> <p>投影运算用于从一个关系中选择某些属性列组成新的关系。</p> <p><strong>例题:</strong></p> <pre> R = { (A, B, C), (D, E, F), (G, H, I) } π_A,C (R) = { (A, C), (D, F), (G, I) } </pre> <h3>7. 连接 (Join)</h3> <p>连接运算用于将两个关系通过共同的属性组合成一个新的关系。</p> <p><strong>例题:</strong></p> <pre> R = { (A, B, C), (D, E, F) } S = { (B, G, H), (E, I, J) } R ⋈ S = { (A, B, G, H), (D, E, I, J) } </pre> </div>
上一条 下一条