
答案没看懂,可否来个大神解释下,感激不尽
a. t1 ←Πisbn(σpublisher=“McGraw−Hill′′ (books))
Πname ((member ⋈ borrowed) ⋈ t1))
b. t1 ←Πisbn(σpublisher=“McGraw−Hill′′ (books))
Πname,i sbn(member ⋈ borrowed) ÷ t1
c. t1 ←member⋈ borrowed⋈ (σpublisher=“McGraw−Hill′′ (books))
Πname (σcountisbn > 5 (( memb_no Gcount-distinct(isbn) as countisbn(t1))))
d. t1 ←member⋈borrowed⋈books
⋈publisher,name (σcountisbn > 5 (( publisher, memb_no Gcount-distinct(isbn) as countisbn(t1)))
主要是一些符号,你可以看你书上的例题照着写就可以了。比如σ,是表示取它的字段。
关系代数,看来要回归大学再重塑
这是运用关系代数的知识,关系代数是一种抽象的将查询语言,他用对关系的运算来表达查询,所谓的关系通俗的说就是一个二维表。
关系代数的运算可分为传统的集合运算和专门的关系运算两类。
首先是传统的集合运算,传统的集合运算包括并、差、交、笛卡尔积四种运算。
条件:设关系R和关系S具有相同的目(即两个关系都有n个属性),且相应的属性都取自一个域(即相同的数据库类型),t是元组变量(元组:二维表的一行数据),t∈R表示t是R的一个元组。- 并(union)
关系R与关系S的并记作R∪S={t|t∈R∨t∈S}
其结果仍为n目关系,由属于R或属于S的元组组成。 - 差(except)
关系R与关系S的差记作R-S={t|t∈R∧t∉S}
其结果仍为n目关系,由属于R而不属于S的元组组成。 - 交(intersection)
关系R与关系S的交记作R∩S={t|t∈R∧t∈S}
其结果仍为n目关系,由属于R并属于S的元组组成。 - 笛卡尔积(cartesian product)
n目关系R与m目关系S的笛卡尔积记作R×S={〖t_r〗^"⌒" t_s |t_r∈R∧t_s∈S}
其结果元组的前n列是关系R的一个元组,后m列是关系S的一个元组。R有a个元组,S有b个元组,结果元组个数为a*b。
其次是专门的关系运算。专门的关系运算包括选择、排序、连接、除运算等。
为了解释清楚,先引入几个记号。- 设关系模式为R(A1,A2, ⋯,An),它的一个关系为R。t∈R表示t是R的一个元组(元组:二维表的一行数据)。t[Ai]表示元组t中相应于属性Ai的一个分量。
- 若A={Ai1,Ai2, ⋯,Aik},其中Ai1,Ai2,…,Aik是属性A1,A2,…,An中的一部分,则A称为属性列或属性组。t[A]=( t[Ai1],t[Ai2], ⋯,t[Aik])表示元组t在属性列A上诸分量的集合,A则表示{ A1,A2, ⋯,An }中去掉{Ai1,Ai2,⋯,Aik}后剩余的属性组。
- R是n目关系,S是m目关系。t_r∈R,t_s∈S,〖t_r〗^"⌒" t_s称为元组的连接。它是一个n+m列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。
- 给定一个关系R(X,Z),X和Z为属性组。当t[X]=x时,x在R中的象集定义为Zx={t[Z]| t∈R, t[X]=x}它表示R中属性组X上值为x的诸元组在Z上分量的集合。
下面给出专门运算关系的定义。
- 选择(selection)
选择又称为限制(restriction)。它是在关系R中选择满足给定条件的诸元组,记作σ_F (R)={t|t∈R∧F(t)=‘真’}其中F表示选择条件,它是一个逻辑表达式,取逻辑值”真”或”假”。 - 投影(projection)
关系R上的投影是从R中选择若干属性列组成新的关系。记作Π_A (R)={t[A]|t∈R}其中A表示R中的属性列。 - 连接(join)
连接又称为θ连接,它是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。记作R■(⋈@AθB)S={〖t_r〗^"⌒" t_s│t_r∈R∧t_s∈S∧t_r [A]θt_s [B] }。其中A和B分别是上列数相等且可比的属性组,θ是比较运算符。结果取得是A属性组的值与B属性组的值满足θ的元组。θ为等号的为等值连接。在等值连接的基础上去掉重复的属性列叫做自然连接。 - 除运算(division)
用象集定义除运算:给定关系R(X,Y)和 S(Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。R与S的的除运算得到新关系P(X),P是R中满足下列条件的元组在X属性列上的投影:元组在X上分量值x的象集Yx包含S在Y上投影的集合。记作R÷S={t_r [X]│t_r∈R∧Π_Y (S)⊆Yx}其中Yx为x在R中的象集,x=t_r [X]。