目錄
一、請用關系代數完成下列查詢
1. 求 供應工程J1 零件P1的供應商號碼SNO;
2. 求?供應工程J1?零件(P)為紅色?的供應商號碼SNO;
3. 求?沒有使用?天津供應商(P)生產的紅色零件(S)?的工程號JNO;
4. 求?至少使用了?供應商S1 所供應的?全部零件(S)?的工程號JNO;
5. 求?使用了紅色零件(P)?但沒有使用藍色零件(P)?的工程號(JNO);
6. 求供應了 藍色零件(P)工程項目(J)在北京?的?供應商的姓名和所在城市。
7. 檢索?至少使用了兩種零件?的工程號(JNO)。
8. 檢索 J1號工程 不使用的零件號(PNO)。
二、試述等值連接與自然連接的區別和聯系。
三、關系代數的基本運算有哪些?
四、為什關系代數么關系中的元組沒有先后順序?
五、為什么關系中不允許有重復元組?
設有一個SPJ數據庫,包含S、P、J、SPJ 4個關系模式:
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 零件P1的供應商號碼SNO;
2. 求?供應工程J1?零件(P)為紅色?的供應商號碼SNO;
3. 求?沒有使用?天津供應商(P)生產的紅色零件(S)?的工程號JNO;
相當于?求 所有JNO工程號 - (使用了 天津供應商生產的 紅色零件 的工程號)
4. 求?至少使用了?供應商S1 所供應的?全部零件(S)?的工程號JNO;
5. 求?使用了紅色零件(P)?但沒有使用藍色零件(P)?的工程號(JNO);
6. 求供應了 藍色零件(P)工程項目(J)在北京?的?供應商的姓名和所在城市。
7. 檢索?至少使用了兩種零件?的工程號(JNO)。
8. 檢索 J1號工程 不使用的零件號(PNO)。
二、試述等值連接與自然連接的區別和聯系。
(1)等值連接:從關系R和S的笛卡爾積中選取A,B屬性值相等的元組;
(2)自然連接:是特殊的等值連接,R和S具有相同的屬性組B,在結果中去掉重復的屬性列。
????????連接運算符是“=”的連接運算稱為等值連接。它是從關系R與S的廣義笛卡爾積中選取A,B屬性值相等的那些元組。
????????自然連接是一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的屬性組,并且在結果中把重復的屬性列去掉。
三、關系代數的基本運算有哪些?
?并、差、笛卡爾積、投影和選擇5種運算為基本的運算。其他3種運算,即交、連接和除,均可以用這5種基本運算來表達。
四、為什關系代數么關系中的元組沒有先后順序?
?關系是元組的集合,集合中的元素是沒有順序的,所以關系中元組的順序無關緊要。
五、為什么關系中不允許有重復元組?
因為每個關系模式都有一個主鍵,在關系中主鍵是唯一存在的。假若有重復元組,則其主鍵相等,那么起不了唯一標識的作用。所以關系中不允許有重復元組。