關係代數1

2021-09-27 08:53:27 字數 1286 閱讀 5186

1.查詢選修了2號課程的學生的學號。

2.查詢至少選修了一門其直接先行課為5號課程的學生姓名

因為是選修直接先行課,所以在course表裡,而學生姓名在student表裡,學生與課程相聯絡在sc表裡,所以要將這三個表做自然連線

3.查詢選修了全部課程的學生號碼和姓名。

通過除運算求得選修了全部課程的學生號碼,再與student表中投影的sno和sname列做自然連線,即可得到學生號碼和姓名。

4.設有乙個spj資料庫,包括s,p,j,spj四個關係模式:

s( sno,sname,status,city);

p(pno,pname,color,weight);

j(jno,jname,city);

spj(sno,pno,jno,qty);

①**商表s由**商**(sno)、**商姓名(sname)、**商狀態(status)、**商所在城市(city)組成;②零件表p由零件**(pno)、零件名(pname)、顏色(color)、重量(weight)組成;③工程專案表j由工程專案**(jno)、工程專案名(jname)、工程專案所在城市(city)組成;④**情況表spj由**商**(sno)、零件**(pno)、工程專案**(jno)、**數量(qty)組成,表示某**商**某種零件給某工程專案的數量為qty。

試用關係代數完成如下查詢:

(1) 求**工程j1零件的**商號碼sno;

(2) 求**工程j1零件p1的**商號碼sno;

(3) 求**工程j1零件為紅色的**商號碼sno;

(4) 求沒有使用天津**商生產的紅色零件的工程號jno;

(5) 求至少用了**商s1所**的全部零件的工程號jno。

解:  (1)

(2)(3)

(4) πjno(spj)- πjno(σcity=『天津』∧color=『紅『 (s∞spj∞p)————此類題目用減法運算

或在減法運算中被減的部分是使用了天津**商生產的紅色零件的所有工程號,πjno(j)是全部工程的工程號,兩者相減就是沒有使用天津**商生產的紅色零件的工程號,包括沒有使用任何零件的工程號。

(5)1.查詢選修了2號課程的學生的學號。

MySQL利用關係代數進行查詢 關係代數

關係代數的由來 首先從巨集觀上來認識一下關係演算這個概念,換句話講也就是什麼是關係代數,這也是我在接觸一些東西的首要工作。大家都知道對於關係型資料庫的資料庫操作語言分為查詢和更新兩類。而查詢語言這塊,又分為關係代數語言與關係演算語言。這裡講的 關係代數的由來 首先從巨集觀上來認識一下關係演算這個概念...

基於MapReduce的關係代數運算 1

1 選擇運算 map函式 對r中的每個元組t,檢測它是否滿足條件c,如果滿足,則產生乙個鍵值對 t,t reduce函式 直接將每個鍵值對傳遞到輸出即可 2 投影運算 map函式 對r中的每個元組t,剔除t中屬性不在s中的字段得到元組t 輸出鍵值對 t t reduce函式 對任意map任務產生的每...

關係代數運算

五種基本關係代數運算 集合 某些指定的物件集在一起就成了乙個集合,其中每乙個物件叫元素。集合的三特性 確定性 互異性 無序性。1 確定性 指的是概念清晰,物件描述明確,不能含混不清 不能模稜兩可。2 互異性 對於乙個給定的集合,它的任何兩個元素都是不同的。3 無序性 給定的乙個集合,集合內的元素間位...