【SQL Server數據庫】關系模式與關系代數

目錄

一、請用關系代數完成下列查詢

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種基本運算來表達。

四、為什關系代數么關系中的元組沒有先后順序?

?關系是元組的集合,集合中的元素是沒有順序的,所以關系中元組的順序無關緊要。

五、為什么關系中不允許有重復元組?

因為每個關系模式都有一個主鍵,在關系中主鍵是唯一存在的。假若有重復元組,則其主鍵相等,那么起不了唯一標識的作用。所以關系中不允許有重復元組。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/35043.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/35043.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/35043.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【雜記-淺談OSPF協議之RouterDeadInterval死區間隔】

OSPF協議之RouterDeadInterval死區間隔 一、RouterDeadInterval概述二、設置RouterDeadInterval三、RouterDeadInterval的重要性 一、RouterDeadInterval概述 RouterDeadInterval,即路由器死區間隔,它涉及到路由器如何在廣播網絡上發現和維護鄰居關系。…

pycharm中的使用技巧

1、更改主題:找到設置,然后更改主題 點擊選擇自己喜歡的主題,然后就可以更改主題了 2、設置字體的快捷鍵 找到設置,如下: 找到increase,如下: 右鍵選擇,增加字體快捷鍵 按住ctrl滑輪…

Excel 查找后隱去右邊列

Excel 有幾列數字 ABC11002042002202100102326027010841199100512100100 當給定參數時,請從每行找到該參數,隱去右邊的列。如果某行不含該參數,則隱去整行。當參數是 100 時,結果如下: ABC710082021009119910010121…

shell之免交互

免交互 交互:發出指令控制指令的運行,程序再接收到指令的效果做出對應的反應。 免交互:間接的,通過第三方的方式把指令傳送給程序,不用直接的下達指令 Hhere Document 免交互 這是命令行格式,也可以寫在腳本…

QTableWidget的使用

使用QTableWidget,初始化數據、設置列頭及格式,設置行數,設置每個單元格的編輯,間隔行底色變換、行選擇 ,模式,單元格選擇模式、插入行 、追加行、刪除行,單元格加圖標,單元格顯示ch…

Android Gradle開發與應用

Android Gradle 開發是指在 Android 應用開發中使用 Gradle 作為構建工具的過程。Gradle 是一個基于 Groovy 的自動化構建工具,它允許開發者定義靈活的構建邏輯,并且能夠很好地與 Android Studio 集成。以下是一些關于 Android Gradle 開發與應用的基本概…

替換特殊符號

content content.replaceAll("[\\x00-\\x09\\x11\\x12\\x14-\\x1F\\x7F]", ""); 打印特殊符號: String s new String( Character.toChars(0)); System.out.println((char)0); 2024-06-20 17:21:26.155 ERROR 5584 --- [6884333_inbound] c.…

好記性不如爛筆頭(三)——文件保存后打開呈現亂碼問題

現象 請隨博主進行下列操作,神奇的事情會發生—— 1、新建記事本,里面輸入“同”字,保存為ANSI格式 2、再次打開會發現,“同”已經變成了亂碼 3、類似的字還有很多,例如“同學”的“學”。而有些字則不會出現這種情況…

3_電機的發展及學習方法

一、電機組成及發展 1、什么是勵磁? 在電磁學中,勵磁是通過電流產生磁場的過程。 發電機或電動機由在磁場中旋轉的轉子組成。磁場可以由 永磁體或勵磁線圈產生。對于帶有勵磁線圈的機器,電流必須在線圈中流動才能產生(激發&#x…

香港服務器托管對外貿行業必要性和優勢

在當今全球化的經濟環境下,外貿企業面臨著前所未有的機遇與挑戰。其中,服務器托管的選擇對于外貿企業的運營效率和市場拓展具有舉足輕重的作用。香港服務器,憑借其獨特的地理位置、優質的網絡環境和卓越的服務性能,一直是外貿企業…

“Hello, World” 的歷史

“Hello, World!” —— 初學者進入編程世界的第一步 由布萊恩柯林漢 撰寫的“Hello, world”程序 (1978年) 布萊恩W.克尼漢(Brian W. Kernighan)—— Unix 和 C 語言背后的巨人 布萊恩W.克尼漢 布萊恩W.克尼漢在 1942 年出生在加拿大多倫多&#xff…

OS中斷機制-嵌套和競爭

對于FreeRTOS最好不去用中斷嵌套,中斷嵌套會增加堆棧空間的使用,因為每個中斷服務程序都需要保存和恢復寄存器狀態,這可能會耗盡有限的堆棧空間,從而導致系統故障。以及中斷嵌套時,不同的中斷服務程序可能會競爭訪問共享資源,從而增加死鎖的風險。這可能會導致系統出現故…

Verilog進行結構描述(structural modeling)(一):基本概念

目錄 1.結構描述(structural modeling)的內容:2.實例 微信公眾號獲取更多FPGA相關源碼: 1.結構描述(structural modeling)的內容: 用門來描述器件的功能基于基本元件和底層模塊例化語句最接近實際的硬件結構主要使用元件的定義、使用聲明以…

Flink——最流批的大數據框架(流批一體)

Apache Flink基礎教程 資料來源:Apache Flink Tutorial (tutorialspoint.com) Apache Flink是Apache Hadoop的開源本地分析數據庫。它由Cloudera、MapR、Oracle和Amazon等供應商提供。本教程中提供的示例是使用Cloudera Apache Flink開發的。 本教程是為那些想要學…

fork 是一個創建新進程的系統調用

在計算機科學中,fork 是一個創建新進程的系統調用。具體來說,fork 調用會創建一個與當前進程幾乎完全相同的副本,包括父進程的內存布局、環境變量、打開的文件描述符等。這個新的進程被稱為子進程,而原始進程被稱為父進程。 以下…

光伏開發有沒有難點?如何解決?

隨著全球對可再生能源的日益重視,光伏技術作為其中的佼佼者,已成為實現能源轉型的關鍵手段。然而,光伏開發并非一帆風順,其過程中也面臨著諸多難點和挑戰。本文將對這些難點進行探討,并提出相應的解決策略。 一、光伏開…

12 學習總結:操作符

目錄 一、操作符的分類 二、二進制和進制轉換 (一)概念 (二)二進制 (三)進制轉換 1、2進制與10進制的互換 (1)2進制轉化10進制 (2)10進制轉化2進制 2…

解決vs2022scanf報錯問題

vs2022scanf報錯問題 大家下完vs2022之后,開心的寫下一段簡單的代碼: #include <stdio.h> #include <stdlib.h>int main() {int a;scanf("%d", &a);printf("%d", a);return 0; } vs2022會毫不猶豫的報錯,下面是報錯信息: 翻譯過來就是v…

探究InnoDB Compact行格式背后

目錄 一、InnoDB 行格式數據準備 二、COMPACT行格式整體說明 三、記錄的額外信息 &#xff08;一&#xff09;變長字段長度列表 數據結構 存儲過程 讀取過程 變長字段長度列表存儲示例 &#xff08;二&#xff09;NULL 值位圖 數據結構 存儲過程 讀取過程 NULL 值…

【MySQL進階之路 | 高級篇】索引的聲明與使用

1. 索引的分類 MySQL的索引包括普通索引&#xff0c;唯一性索引&#xff0c;全文索引&#xff0c;單列索引和空間索引. 從功能邏輯上說&#xff0c;索引主要分為普通索引&#xff0c;唯一索引&#xff0c;主鍵索引和全文索引.按物理實現方式&#xff0c;索引可以分為聚簇索引…