一个代数结构就是在一个集合上定义了若干个运算符,每个运算符的操作对象是集合中的元素,操作结果也是集合中的元素,即运算具有封闭性。
关系代数就是在关系上定义了一些运算,这些去处的结果仍然是关系。关系代数的运算包括4个集合运算:交、并、差和广义笛卡尔积;4个关系运算:选择、投影、连接和除;以及辅助这些运算的比较运算、逻辑运算。关系代数就是用这些运算表达对关系数据库的各种查询。
传统的集合运算
并
集合R和S的并,是在R或S或两者中的元素组成的集合,每个元素在并集中只出现一次。
R和S必须同类型(属性集相同、次序相同,但属性名可以不同)。
记作:R∪S={t|t∈R∨t∈S}
差
R和S的差,是在R中而不在S中的元素的集合
R和S必须是同型关系。
记作:R-S={t|t∈R∧t∈S}
交
R和S的交,是在R和S中都存在的元素的集合
一个元素在交集中只出现一次
R和S必须是同型关系
记作:R∩S={t|t∈R∧t∈S}
广义笛卡尔积
两个分别为n目和m目关系R和S的广义笛卡尔积是一个(n+m)列的元组的集合,元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若R有K1个元组,S有K2个元组,则关系R和关系S的广义笛卡尔积有K1*K2个元组,则关系R和关系S的广义笛卡尔积有K1*K2个元组,记作
R×S={tR⌒tS|tR∈R,∧tS∈S}
关系的广义笛卡尔积可用于两关系的连接操作。