关系代数可以理解为一种抽象的查询语言,它用对关系的运算来表达查询。运算对象、运算符、运算结果是运算的三大要素。关系代数的运算对象是关系,运算结果亦为关系。
一、数据库中关系代数与关系运算的区别
关系代数可以理解为一种抽象的查询语言,它用对关系的运算来表达查询。
运算对象、运算符、运算结果是运算的三大要素。
关系代数的运算对象是关系,运算结果亦为关系。关系代数用到的运算符包括两类:集合运算符和专门的关系运算符。
关系代数的运算按运算符的不同可分为传统的集合运算和专门的关系运算两类。
传统的集合运算是二目运算,包括并、差、交、笛卡儿积4种运算;专门的关系运算包括选择、投影、连接、除运算等。
关系演算基本的语法为:
1.范围变量定义
<Range var definition>::=
RANGEVAR <range var name> RANGES OVER <relational exp commlist>
2.范围属性定义
<range attr reference>::=
<range var name>.<attr reference> [ AS <atrr name> ]
3.布尔表达式
<boolean exp>::= … all the usual possibilities, together with: | <quantified boolean exp>
4.量化布尔表达式(存在和全部)
<quantified boolean exp>::=
EXISTS <range var name>(<boolean exp>)|
FORALL <range var name>(boolean exp>)
5.关系操作
<relational operation>::= <proto tuple>[WHERE <boolean exp>]
6.元组表达式
<proto tuple> ::= <tuple exp>
延伸阅读:
二、什么是数据库
数据库就是英文的“database”翻译来的,data + base,故名思义就是数据的根源,数据的基础。那么为什么要有数据库呢,数据库首先是个计算机软件,在所谓数据库诞生之前,常用方法可能是程序员自己写一个小程序来完成数据处理分析这样的工作。
伴随着计算机的普及,越来越多的场景开始使用计算机,产生了越来越多的数据,也催生了越来越多的数据分析需求。为了降低数据分析的门槛,让更多人能够更方便高效地管理分析数据,工程师们就打造了一种专门的软件来帮助人们对数据进行合理的存储以提高存取效率,提供易用的接口和丰富的分析算法以方便使用,集成有效的管理工具以提高数据安全性等等,这就是数据库,也被称为数据库管理系统(DBMS,Database management system)。
数据库是一整套数据管理体系,包括数据存储的模型、数据组织的架构、数据分析的算法、数据管理的工具以及数据访问的接口等等。