当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server:关系代数中的语义

MSSQL
mssql 两种数据插入方式
mssql @@ERROR 使用
sqlserver 数据库日志备份和恢复步骤
SQL Server日志过大会影响查询结果
SQLserver 实现分组统计查询(按月、小时分组)
SQL语句查询是否为空 =null及null
对有insert触发器表取IDENTITY值时发现的问题
SQL SERVER 查询正在实行的SQL语句
sql 随机抽取几条数据的方法 推荐
sql 多条件组合查询,并根据指定类别找出所有最小子类别的SQL语句备忘
Java 实现连接sql server 2000
SQL Server 不存在或访问被拒绝(转)
分页查询 效率最高
sqlserver 系统存储过程 中文说明
sql 多表连接查询
SQL SERVER 自增列
丢失的数据忘记备份的处理方法[图文]
SqlServer 序号列的实现方法
MsSql 存储过程分页代码 [收集多篇]
SQLServer 数据库中如何保持数据一致性

MSSQL 中的 SQL Server:关系代数中的语义


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 159 ::
收藏到网摘: n/a

上篇文章小编和大家谈到关系代数的语法,这篇文章将和大家讲的是语义,看了上篇文章也许你不是很懂,那就把这篇文章看完了吧。

文章中的语义中操作符为:并、交、差、积。下面和大家一一谈及。希望对大家有所帮助。

1.

数学中两个集合的并是这两个集合的所有元素组成的集合。因为一个关系是(或更确切

地说是包含)一个集合,即一个元组的集合,所以构造这样两个集合的并是完全可能的;所

得结果包含了出现在任一个或两个原关系中的所有元组。例如,出现在关系变量S中的供应

商元组的集合与出现在关系变量P中的零件元组的集合的并当然是一个集合。

然而,尽管这一结果是一个集合,却不是一个关系;关系不能含有不同类型的元组,其

中的元组必须是同类的。当然,我们希望结果是一个关系,因为要保持封闭性。所以,关系

代数中的并,不是通常数学中的并;它是一种特殊类型的并,要求两个参与操作的关系是同

一类型—即它们或者都包含供应商元组,或者都包含零件元组,而不能是两者的混合。如

果两个关系属于同一类型,那就可以进行并操作,得到的结果是一个相同类型的关系;换句

话说,封闭的特性被保持了下来。

下面是关系并操作的定义:给定两个相同类型的关系AB,两者的并即A UNION B是相同类型的一个关系,关系的主体由出现在A中或B中或同时出现在两者之中的所有元组组成。

2.

由于和并基本相同的原因,关系交操作符的操作对象必须是相同类型的。给定类型相同的关系AB,它们的交A INTERSECT B是一个相同类型的关系,关系的主体包含同时出现在AB中的所有元组。

3.

像并和交一样,关系的差操作符也要求操作对象是同一类型。给定两个类型相同的关系AB,它们的差A MINUS B(两者有先后次序)是一个与它们的类型相同的关系,关系的主体包含属于A但不属于B的所有元组。来自软晨学习网

4.

数学里的两个集合的笛卡尔积是满足如下条件的有序对的集合:每个有序对的第一个元素来自于第一个集合,第二个元素来自第二个集合。因此,两个关系的笛卡尔积可粗略地说是有序元组对的集合。但我们想保持封闭的特性;换句话说,我们想要结果包含元组本身,而不是有序的元组对。因此,关系的笛卡尔积是对这一操作的一个扩充,其中的每个有序元

组对代替以两个相关元组相并得出的一个元组(这里的“并”是一般集合理论上的并,而不是特殊的关系意义上)。因此给定:

A 1 : a 1A 2 : a 2?A m : a m

B 1 : b 1B 2 : b 2?B n : b n

两者的并是一个单个元组:

A 1 : a 1A 2 : a 2?A m : a mB 1 : b 1B 2 : b 2?B n : b n