在关系代数(Relational Algebra)中,“选择投影列”对应的是 投影操作(Projection),用来从关系中只保留指定的属性(列),并自动去掉重复行。
符号:
π_{属性1, 属性2, ...}(关系名)
含义:
从“关系名”中只取列出的列,其余列不要。
假设有关系:
Student(Sno, Sname, Sage, Sdept)
π_{Sname, Sdept}(Student)
结果只包含:
Sname | Sdept
π_{Sno, Sage}(Student)
关系代数中,投影结果是一个集合,所以:
π_{Sdept}(Student)
即使有多个学生在同一院系,结果中 Sdept 只出现一次。
先筛选行,再选列:
π_{Sname, Sage}(σ_{Sdept='CS'}(Student))
含义:
σ:选出计算机系学生π:只显示姓名和年龄✅ 可以选任意列
✅ 列顺序由你指定
❌ 不能出现不存在的属性
✅ 可只选一列,也可选全部列(等价于不投影)
| 关系代数 | SQL |
|---|---|
| π_{A,B}® | SELECT A, B FROM R |
| σ(选择) | WHERE |
| 自动去重 | SELECT 默认去重(关系代数语义) |
如果你愿意,我也可以用考试题 / 例题 / 示意图方式帮你进一步理解投影操作。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。