解释DBMS中代数关系的一元运算?
查询是一个问题或请求信息。查询语言是一种用于从数据库中检索信息的语言。
查询语言分为两种类型-
程序语言
非程序语言
程序语言
通过指定要执行的操作顺序从数据库中检索信息。
例如-关系代数。
结构查询语言(SQL)基于关系代数。
关系代数由一组操作组成,这些操作将一个或两个关系作为输入并产生一个新关系作为输出。
关系代数运算的类型
不同类型的关系代数运算如下-
选择操作
项目运作
重命名操作
联合运营
路口操作
差分运算
笛卡尔积运算
加入操作
分部运作
选择、项目、重命名属于一元操作(对一张表进行操作)。
选择操作
它显示满足条件的记录,用sigma(σ)表示。它是原始关系的水平子集。
语法
选择操作的语法如下-
σcondition(table name)
示例1
考虑下面给出的学生表-
要显示学生表的所有记录,请使用下面给出的命令-
σ(student)
要在学生表中显示CSE分支的所有记录,我们可以使用下面提到的命令-
σbranch=cse(student)
输出
要显示regno>2的学生表中的所有记录,我们可以使用下面给出的命令-
σRegNo>2(student)
输出
要显示ECE分支B部分学生的记录,请使用下面给出的命令-
σbranch=ECE ^ section=B(student)
要显示B部分CSE和IT分支的记录,请使用以下命令-
σSection=B ^ Branch=cse ∨ branch=IT(student)
示例2
考虑员工表作为另一个例子来了解选择操作-
检索有关工资超过20,000的员工的信息。
如果指定了一个条件,我们会得到以下结果-
σ salary > 20,000 (emp)
如果查询中指定了多个条件,则(AND:∧,OR:∨,Not:#,equal:=,>,<,>=,<=)
关系运算符将用于将多个条件组合成一个语句。
示例-如果我们希望检索工资>20,000且担任部门主管(HOD)且部门编号为20的员工的信息。
σ salary > 20,000 ^LOC=HOD ^Deptno=20(emp)
投影操作
它显示表的特定列。它用饼(Π)表示。它是原始关系的垂直子集。它消除了重复的元组。
语法
投影操作的语法如下-
∏regno(student)
示例1
考虑下面给出的学生表-
要显示学生表的regno列,请使用以下命令-
∏regno(student)
输出
要显示学生表的分支,部分列,请使用下面给出的命令-
∏branch,section(student)
输出
要显示regno,ECE学生的部分,请使用下面提到的命令-
∏regno,section(σbranch=ECE(student))
输出
注意-条件可以在选择操作中写入,但不能在投影操作中写入。
示例2
考虑员工表以了解有关投影的更多信息。
如果查询中没有指定条件,则
∏ empid, ename, salary, address, dno (emp)
如果指定条件,则选择和投影的组成如下-
∏ empid, ename, salary, address, dno (σ salary >20,00 ^ LOC = HOD ^ dno=20) (emp)
重命名操作
它用于为关系分配新名称。它由ρ(rho)表示。
语法
重命名操作的语法如下-
ρnewname (tablename or expression)
考虑下面给出的学生表-
示例1
在以下帮助下,用newstudent重命名学生表-
ρnewstudent (student)
示例2
在以下命令的帮助下,学生表的名称、分支列分别被重命名和newbranch-
ρnewname,newbranch(Πname,branch( student))
二元运算应用于两个兼容的关系。
两个关系R1、R2是相容的,如果它们的度数相同并且对应属性的域相同。
DDL中的Rho用于关系名称,DML中的Rho用于属性名称。
SQL Old name New name
重命名的类型
重命名可以通过三种方法使用,如下所示-
更改关系的名称。
更改属性的名称。
两者都改变。