解释关系代数(DBMS)中的选择操作?


查询是一个问题或信息请求。查询语言是一种用于从数据库检索信息的语言。

查询语言分为两种类型:

  • 过程式语言

  • 非过程式语言

过程式语言

通过指定要执行的操作序列来从数据库中检索信息。

例如:关系代数。

结构化查询语言 (SQL) 基于关系代数。

关系代数由一组操作组成,这些操作以一个或两个关系作为输入,并产生一个新的关系作为输出。

关系代数操作的类型

关系代数操作的不同类型如下:

  • 选择操作

  • 投影操作

  • 重命名操作

  • 并集操作

  • 交集操作

  • 差集操作

  • 笛卡尔积操作

  • 连接操作

  • 除法操作

选择、投影、重命名属于一元操作(作用于一个表)。

选择操作

它显示满足条件的记录。它用 sigma (σ) 表示,是原始关系的水平子集。

语法

其语法如下:

σcondition(table name)

示例

考虑下面给出的学生表:

学号 (Regno)专业 (Branch)班级 (Section)
1计算机科学与工程 (CSE)A
2电子与通信工程 (ECE)B
3土木工程 (CIVIL)B
4信息技术 (IT)A

现在,要显示学生表的所有记录,我们将使用以下命令:

σ(student)

此外,当我们必须显示学生表中计算机科学与工程 (CSE) 专业的所有记录时,我们将使用以下命令:

σbranch=cse(student)

因此,结果如下:

学号 (RegNo)专业 (Branch)班级 (Section)
1计算机科学与工程 (CSE)A

要显示学号大于 2 的学生表中的所有记录,我们将使用以下命令:

σRegNo>2(student)

输出如下:

学号 (RegNo)专业 (Branch)班级 (Section)
3土木工程 (CIVIL)B
4信息技术 (IT)A

要显示电子与通信工程 (ECE) 专业 B 班的学生记录,请使用以下命令:

σbranch=ECE ^ section=B(student)

要显示计算机科学与工程 (CSE) 和信息技术 (IT) 专业 B 班的记录,请使用以下命令:

σSection=B ^ Branch=cse ∨ branch=IT(student)

考虑另一个名为 EMPLOYEE 的表,以了解选择操作。

检索工资大于 20,000 的员工信息

  • 如果指定一个条件,则可以使用以下命令:

σ salary > 20,000 (emp)
  • 如果在查询中指定多个条件,则(AND:^,OR:∨,NOT:#,等于:=,>,<,>=,<=)

关系运算符将用于将多个条件组合到单个语句中。

示例:为了检索工资>20,000 且在 HOD 工作且部门号为 20 的员工信息,可以使用以下命令:

σ salary > 20,000 ^LOC=HOD ^Deptno=20(emp)

更新于:2021年7月6日

8K+ 次浏览

启动你的职业生涯

完成课程获得认证

开始学习
广告