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

MSSQL
无数据库日志文件恢复数据库方法两则(一)
SQLServer编写存储过程小工具(一)
SQLServer编写存储过程小工具(二)
SQLServer编写存储过程小工具(三)
Eclipse+JBoss+MySQL开发环境设置
MYSQL使用简述
一些有用的sql语句实例
枚举SQLServer的实例
SQLServer应用程序中的高级SQL注入
SQL Server数据库超级管理员账号防护知识
讲解如何实现互联网上数据库的安全
SQL 2005数据库转到SQL 2000的步骤讲解
带你轻松接触数据库生成xml的两个方法
用MS SQL Reporting Services生成报表
保护SQL Server的十个步骤
关于SQL SERVER的一些安全问题
SQL Server 2008数据库中使用表值参数
SQL Server 2005中用存储过程实现搜索功能
MS SQL数据库置疑解决办法
SQL Server密码管理的六个危险判断

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 130 ::
收藏到网摘: 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