版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
集合與關(guān)系《應(yīng)用離散數(shù)學(xué)(第2版)》第3章21世紀(jì)高等教育計(jì)算機(jī)規(guī)劃教材
方景龍周麗編著目錄3.1集合及其運(yùn)算3.2二元關(guān)系及其運(yùn)算3.3二元關(guān)系的性質(zhì)與閉包3.4等價(jià)關(guān)系與劃分3.5偏序關(guān)系與拓?fù)渑判?.6函
數(shù)3.7集合的等勢(shì)與基數(shù)3.8多元關(guān)系及其應(yīng)用
集合是現(xiàn)代數(shù)學(xué)中最重要的基本概念之一,數(shù)學(xué)概念的建立由于使用了集合而變得完善并且統(tǒng)一起來。集合論已成為現(xiàn)代各個(gè)數(shù)學(xué)分支的基礎(chǔ),同時(shí)還滲透到各個(gè)科學(xué)技術(shù)領(lǐng)域,成為不可缺少的數(shù)學(xué)工具和表達(dá)語言。對(duì)于計(jì)算機(jī)科學(xué)工作者來說,集合論也是必備的基礎(chǔ)知識(shí),它在開關(guān)理論、形式語言、編譯原理等領(lǐng)域中有著廣泛的應(yīng)用。
本章首先介紹集合及其運(yùn)算,然后介紹二元關(guān)系及其關(guān)系矩陣和關(guān)系圖,二元關(guān)系的運(yùn)算、二元關(guān)系的性質(zhì)、二元關(guān)系的閉包,等價(jià)關(guān)系與劃分、函數(shù),最后介紹多元關(guān)系及其在數(shù)據(jù)庫中的應(yīng)用等。3.1集合及其運(yùn)算3.1.1基本概念
集合是數(shù)學(xué)中最基本的概念之一,如同幾何中的點(diǎn)、線、面等概念一樣,是不能用其他概念精確定義的原始概念。集合是什么呢?直觀地說,把一些東西匯集到一起組成一個(gè)整體就叫做集合,而這些東西就是這個(gè)集合的元素或叫成員。例3.1(1)一個(gè)班級(jí)里的全體學(xué)生構(gòu)成一個(gè)集合。(2)平面上的所有點(diǎn)構(gòu)成一個(gè)集合。(3)方程
的實(shí)數(shù)解構(gòu)成一個(gè)集合。(4)自然數(shù)的全體(包含0)構(gòu)成一個(gè)集合,用N表示。(5)整數(shù)的全體構(gòu)成一個(gè)集合,用Z表示。(6)有理數(shù)的全體構(gòu)成一個(gè)集合,用Q表示。(7)實(shí)數(shù)的全體構(gòu)成一個(gè)集合,用R表示。(8)復(fù)數(shù)的全體構(gòu)成一個(gè)集合,用C表示。(9)正整數(shù)集合Z+,正有理數(shù)集合Q+,正實(shí)數(shù)集合R+。(10)非零整數(shù)集合Z*,非零有理數(shù)集合Q*,非零實(shí)數(shù)集合R*。(11)所有n階(n≥2)實(shí)矩陣構(gòu)成一個(gè)集合,用Mn(R)表示,即
而所有n階(n≥2)可逆實(shí)矩陣也構(gòu)成一個(gè)集合,用
表示。
通常用大寫英文字母表示集合的名稱,用小寫英文字母表示集合里的元素。若元素a屬于集合A
,記作
;若元素
a不屬于集合
A,記作
。并用
或
記集合
A中元素的個(gè)數(shù)。
集合的表示方法通常有下列兩種。1.列舉法
列舉法是列出集合中的所有元素,元素之間用逗號(hào)隔開,并把它們用花括號(hào)括起來。下面是用列舉法表示的集合:
有時(shí)列出集合中所有元素是不現(xiàn)實(shí)或不可能的,如上面的B和C,但只要在省略號(hào)前或后列出一定數(shù)量的元素,能使人們一看就能了解哪些元素屬于這個(gè)集合就可以。
2.描述法
描述法是用謂詞描述出元素的公共特性,其形式為
,表示
S是使
為真的
x的全體。下面是用描述法表示的集合:
下面介紹表示集合的有關(guān)符號(hào)和方法。
在一個(gè)具體問題中,若一個(gè)集合包含我們討論的每一個(gè)集合,則稱它是全集,記作
E。全集具有相對(duì)性,不同的問題有不同的全集,即使是同一個(gè)問題,也可以取不同的全集。例如,當(dāng)討論有關(guān)整數(shù)的問題時(shí),可以整數(shù)集作為全集,也可以把有理數(shù)集取作全集。
沒有元素的集合叫做空集,記作
。3.1.2集合的運(yùn)算
集合的基本運(yùn)算有并、交、補(bǔ)、差和對(duì)稱差,它們的定義如下。
以上集合之間的關(guān)系和運(yùn)算可以用文氏圖(VennDiagram)形象、直觀地描述。文氏圖通常用一個(gè)矩形表示全集
,矩形中的點(diǎn)表示全集
E中的元素,
E的子集用矩形區(qū)域內(nèi)的圓形區(qū)域表示,圖中陰影區(qū)域表示新組成的集合。
圖3.1就是一些文氏圖的實(shí)例。
圖3.1文氏圖由文氏圖容易看出下列關(guān)系成立:等等。這說明使用文氏圖能夠?qū)σ恍﹩栴}給出簡(jiǎn)單、直觀的解釋,這種解釋對(duì)分析問題有很大幫助。不過,文氏圖只是起一種示意作用,可以啟發(fā)我們發(fā)現(xiàn)集合之間的某些關(guān)系,但不能用文氏圖來證明恒等式,因?yàn)檫@種證明是不嚴(yán)密的。
集合的并、交、差、補(bǔ)等具有許多性質(zhì),下面列出這些性質(zhì)中最主要的幾條。定理3.1中的恒等式均可一一加以證明,下面我們選證其中的一小部分,其他的留給讀者自己證明。我們采用形式化的證明方法,在敘述中將大量用到數(shù)理邏輯的有關(guān)符號(hào)和等價(jià)公式。
上面給出的集合運(yùn)算的一些恒等式,如交換律、結(jié)合律、分配律、等冪律、德·摩根律等都可以推廣到多個(gè)集合中去,這里就不再列出具體的式子了。3.1.3集合的計(jì)算機(jī)表示
計(jì)算機(jī)表示集合的方式各種各樣。一種方式是把集合的元素?zé)o序地存儲(chǔ)起來??墒侨绻@樣做,在做集合的運(yùn)算時(shí)會(huì)浪費(fèi)很多時(shí)間,因?yàn)檫@些運(yùn)算需要大量的元素檢索。我們這里介紹一種利用位串表示集合的方法,集合的這種表示方法使計(jì)算集合的運(yùn)算變得很容易。
位串是0個(gè)或多個(gè)字位的序列,而每個(gè)字位都有兩個(gè)可能的值,即0或1,字位的這種取值來自二進(jìn)制數(shù)字,因?yàn)?和1是用在數(shù)的二進(jìn)制表示中的數(shù)字。位串是計(jì)算機(jī)表示信息的基本方式。3.2二元關(guān)系及其運(yùn)算3.2.1笛卡爾積證明
(這里只給出(1)的第一個(gè)等式的證明,其他的可類似地進(jìn)行。所用證明方法與證明兩個(gè)集合相等一樣,因?yàn)榈芽柗e也是集合。)因?yàn)樗?/p>
。由數(shù)學(xué)歸納法不難證明定理3.2對(duì)有限多個(gè)集合的并運(yùn)算、交運(yùn)算和差運(yùn)算也是成立的。3.2.2二元關(guān)系及其表示R和S的關(guān)系圖如圖3.2(a)和圖3.2(b)所示。圖3.2關(guān)系圖3.2.3二元關(guān)系的運(yùn)算
由于關(guān)系也是集合,所以對(duì)關(guān)系也可以進(jìn)行并運(yùn)算、交運(yùn)算、補(bǔ)運(yùn)算、差運(yùn)算、對(duì)稱差運(yùn)算等集合的有關(guān)運(yùn)算。
除了一般的集合運(yùn)算外,關(guān)系本身還具有兩種特殊的運(yùn)算:復(fù)合運(yùn)算和逆運(yùn)算。定義3.8設(shè)
R是從集合A
到集合B的關(guān)系,S
是從集合
B到集合
C的關(guān)系,則從A
到
C的關(guān)系稱為
R與
S的復(fù)合關(guān)系。即有
此例說明,復(fù)合關(guān)系不滿足交換律,但復(fù)合關(guān)系滿足結(jié)合律,即如下定理3.3。定理3.3設(shè)
R是從集合
A到集合
B的關(guān)系,
S是從集合B到集合
C的關(guān)系,
T是從集合C
到集合
D的關(guān)系,則證明
(與定理3.2的證明方法類似,這里用的仍然是證明兩個(gè)集合相等的方法。)
根據(jù)定理3.3,利用數(shù)學(xué)歸納法容易證明下面結(jié)論。3.3二元關(guān)系的性質(zhì)與閉包3.3.1二元關(guān)系的性質(zhì)
有若干用于把集合上的關(guān)系進(jìn)行分類的性質(zhì)。這里我們只介紹其中最重要的幾個(gè)。例3.14對(duì)于下列五種二元關(guān)系,試判斷哪些是自反的,哪些是反自反的,哪些是對(duì)稱的,哪些是反對(duì)稱的,哪些是傳遞的。(1)實(shí)數(shù)集合R上的小于等于關(guān)系≤。(2)集族上的包含于關(guān)系
。(3)正整數(shù)集合Z+上的整除關(guān)系|。(4)平面上直線集合L上的垂直關(guān)系⊥。(5)平面上直線集合L上的平行關(guān)系
(認(rèn)為直線不與自己平行)。解(1)是自反的,不是反自反的,不是對(duì)稱的,是反對(duì)稱的,是傳遞的。(2)是自反的,不是反自反的,不是對(duì)稱的,是反對(duì)稱的,是傳遞的。(3)是自反的,不是反自反的,不是對(duì)稱的,是反對(duì)稱的,是傳遞的。(4)不是自反的,是反自反的,是對(duì)稱的,不是反對(duì)稱的,不是傳遞的。(5)不是自反的,是反自反的,是對(duì)稱的,不是反對(duì)稱的,不是傳遞的。
關(guān)系的性質(zhì)不僅像定理3.7所表述的那樣反應(yīng)在它的集合表達(dá)式上,也明顯地反應(yīng)在它的關(guān)系矩陣和關(guān)系圖上。
表3.1列出了關(guān)系R的五種性質(zhì)在關(guān)系矩陣和關(guān)系圖中的特點(diǎn)。表3.1 關(guān)系R的五種性質(zhì)在關(guān)系矩陣和關(guān)系圖中的特點(diǎn)表3.2 關(guān)系的五種性質(zhì)和運(yùn)算之間的聯(lián)系3.3.2二元關(guān)系的閉包
關(guān)系圖如圖3.3所示。圖3.3閉包的關(guān)系圖3.4等價(jià)關(guān)系與劃分
在日常生活或者科學(xué)研究中,我們常常需要對(duì)一些事物或某個(gè)集合上的元素按照某種方式進(jìn)行分類。如進(jìn)行舉重比賽時(shí),需要將運(yùn)動(dòng)員按重量級(jí)別進(jìn)行分類,每一個(gè)運(yùn)動(dòng)員必定屬于某一個(gè)重量級(jí)別,而任何一個(gè)運(yùn)動(dòng)員不能同時(shí)屬于兩個(gè)不同的重量級(jí)別。又如,對(duì)一些幾何圖形構(gòu)成的集合,按面積相等關(guān)系將它們進(jìn)行分類,即面積相等的幾何圖形屬于一類,這樣,每個(gè)幾何圖形必定屬于一類,而且不同類沒有公共點(diǎn)。
這種對(duì)某個(gè)集合上的元素按照某種方式進(jìn)行分類就叫作集合的劃分,它是一個(gè)非常重要而且應(yīng)用非常廣泛的概念。
集合的劃分與一種重要的二元關(guān)系即等價(jià)關(guān)系密切相關(guān),等價(jià)關(guān)系具有十分良好的性質(zhì)和廣泛的應(yīng)用,因而成為最重要的二元關(guān)系之一。定義3.14設(shè)R是集合A上的關(guān)系,如果R是自反的、對(duì)稱的、傳遞的,則稱R是等價(jià)關(guān)系。設(shè)R是一個(gè)等價(jià)關(guān)系,若
,稱
a等價(jià)于
b。例3.17(1)在全體中國人組成的集合上定義“同姓”關(guān)系,它具備自反、對(duì)稱、傳遞的性質(zhì),因此是一個(gè)等價(jià)關(guān)系。(2)平面上直線集合L上的“平行或恒等”關(guān)系是等價(jià)關(guān)系,而L上的“垂直”關(guān)系不是等價(jià)關(guān)系,因?yàn)樗炔皇亲苑吹?,也不是傳遞的。(3)平面上三角形的“全等”關(guān)系、“相似”關(guān)系等都是等價(jià)關(guān)系。(4)“朋友”關(guān)系不是等價(jià)關(guān)系,因?yàn)樗皇莻鬟f的。(5)集合的“包含于”關(guān)系不是等價(jià)關(guān)系,因?yàn)樗皇菍?duì)稱的。
所以R為A上的等價(jià)關(guān)系。該關(guān)系的關(guān)系圖如圖3.5所示。
不難看到,上述關(guān)系圖被分為三個(gè)互不連通的部分,每部分中的數(shù)兩兩都等價(jià)(有關(guān)系),不同部分中的數(shù)則不等價(jià)(沒有關(guān)系)。這種通過等價(jià)關(guān)系給出的每一部分叫做等價(jià)類,下面給出等價(jià)類和由等價(jià)類構(gòu)成的商集的嚴(yán)格定義。圖3.5一個(gè)等價(jià)關(guān)系的關(guān)系圖定理3.9指出,集合A上的等價(jià)關(guān)系R所形成的等價(jià)類,它們兩兩互不相交而且覆蓋住整個(gè)集合A。這種將一個(gè)集合劃分為若干個(gè)不相交的子集的并叫做集合的劃分,下面給出集合劃分的精確定義。定義3.16設(shè)A是一個(gè)非空集合,
是它的非空子集,如果它們滿足下列條件:圖3.6集合的劃分定義3.17設(shè)R是非空集合A上的等價(jià)關(guān)系,以R的所有等價(jià)類作為元素的集合稱為A關(guān)于R的商集,記作A/R,即
根據(jù)定理3.9,一個(gè)商集就是原集合的一個(gè)劃分,并且不同的商集將對(duì)應(yīng)不同的劃分。反之,我們有如下的定理。3.5偏序關(guān)系與拓?fù)渑判?.5.1偏序關(guān)系圖3.7偏序集的哈斯圖定義3.19假設(shè)
a和b是偏序集
上的兩個(gè)元素。如果或
我們就說a
和b是可比較的。否則就說
和b是不可比較的,并記作
。若偏序集
的每一對(duì)元素都是可比較的,則稱
X為全序集,相應(yīng)的偏序就稱為全序。全序集也叫做線性序集或叫做鏈。
雖然偏序集可能不是全序集,但它的子集仍有可能是全序集。很明顯,全序集的每一個(gè)子集都是全序集。
偏序集的子集S可以有多于一個(gè)的極小元和極大元。如果S是無限集合,那么S可能沒有極小元和極大元,例如,偏序集<R,≤>沒有極小元和極大元。如果S是有限集合,那么S一定至少有一個(gè)極小元和一個(gè)極大元。即有下面的定理3.11。
下界、上界、下確界和上確界都可能不存在,即使對(duì)有限集合也是這樣;下界和上界可以有多個(gè),但下確界和上確界如果存在則唯一。而且如果a是集合S的最小(大)元,則a也是S的下(上)確界;反之,如果a是集合S的下(上)確界且
,則a也是S的最?。ù螅┰?。
有些書將下確界叫做最大下界,并記作
,而不是
,將上確界叫做最小上界,并記作
,而不是
。圖3.8根據(jù)哈斯圖求上、下確界3.5.3拓?fù)渑判?/p>
拓?fù)渑判蚺c安排任務(wù)有關(guān)。假設(shè)一個(gè)項(xiàng)目由20個(gè)任務(wù)構(gòu)成。某些任務(wù)只能在其他任務(wù)結(jié)束之后才能進(jìn)行。怎樣能夠找到完成這些任務(wù)的一個(gè)順序?為了建立這個(gè)問題的數(shù)學(xué)模型,我們首先建立一個(gè)任務(wù)集合上的偏序
,使得
,當(dāng)且僅當(dāng)直到任務(wù)a結(jié)束后任務(wù)b才能開始;然后構(gòu)造與這個(gè)偏序相容的一個(gè)全序R,就得到一個(gè)與這個(gè)偏序相容的完成這20個(gè)任務(wù)的順序,從而安排好這個(gè)項(xiàng)目。這種從一個(gè)偏序構(gòu)造一個(gè)與其相容的全序的過程就叫做拓?fù)渑判颉?/p>
這個(gè)排序所使用的步驟如圖3.9所示。圖3.9拓?fù)渑判蚶?.27一個(gè)計(jì)算機(jī)公司的開發(fā)項(xiàng)目需要完成7個(gè)任務(wù)。其中的某些任務(wù)只能在其他任務(wù)結(jié)束后才能開始。建立任務(wù)上的偏序如下:如果任務(wù)y在x結(jié)束后才能開始,則任務(wù)xp
任務(wù)y。這7個(gè)任務(wù)關(guān)于這個(gè)偏序的哈斯圖如圖3.10所示,求一個(gè)全序使得可以按照這個(gè)全序執(zhí)行這些任務(wù)以完成這個(gè)項(xiàng)目。解
可以通過執(zhí)行一個(gè)拓?fù)渑判虻玫?個(gè)任務(wù)的排序。排序的步驟顯示如圖3.11所示。這個(gè)排序的結(jié)果是
,給出了執(zhí)行任務(wù)的一種可能次序。圖3.10一個(gè)項(xiàng)目開發(fā)的哈斯圖圖3.11一個(gè)項(xiàng)目開發(fā)的工作安排3.6函
數(shù)3.6.1基本概念
函數(shù)(也叫映射)是數(shù)學(xué)中重要的概念,是一種具有特殊性質(zhì)的二元關(guān)系。我們這里所討論的函數(shù)不僅僅是定義在數(shù)集之上,而是可以定義在任意集合之上,它是初等數(shù)學(xué)中函數(shù)概念的推廣。
從定義可以得知,函數(shù)是一種特殊的關(guān)系,它與一般關(guān)系比較具備如下特征:(1)在函數(shù)中,序偶的第一個(gè)元素一定是互不相同的,但關(guān)系中序偶的第一個(gè)元素可以相同。(2)函數(shù)是二元關(guān)系,當(dāng)然也是集合。一個(gè)從X
到Y(jié)的函數(shù),它作為集合,其元素個(gè)數(shù)一定是
;但從X到
Y的二元關(guān)系,作為集合,其元素個(gè)數(shù)確可以是從0到
中的任何一個(gè)正整數(shù)。(3)
的任何子集都是從X
到
Y的二元關(guān)系,因此從X
到
Y的不同二元關(guān)系有
個(gè),但從
X到Y(jié)的不同函數(shù)僅有
個(gè)。3.6.2復(fù)合函數(shù)
我們知道,關(guān)系復(fù)合后可以得到一個(gè)新的關(guān)系。函數(shù)復(fù)合后也得到一個(gè)新的函數(shù)—復(fù)合函數(shù)。3.6.3逆函數(shù)
我們用復(fù)合關(guān)系直接定義了復(fù)合函數(shù),那么逆函數(shù)(反函數(shù))能否通過逆關(guān)系來直接定義呢?3.7集合的等勢(shì)與基數(shù)
通俗地講,集合的基數(shù)是量度集合所含元素多少的量。集合的基數(shù)越大,所含的元素就越多。為了講清楚無限集合的基數(shù),我們先講集合的等勢(shì)概念。定理3.20有理數(shù)集合Q與自然數(shù)集合N等勢(shì),但實(shí)數(shù)集合與自然數(shù)集合N不等勢(shì)。證明比較復(fù)雜,這里從略。
一般地,我們把與有限集合等勢(shì)的集合稱為有限可數(shù)集(有限可列集),把與自然數(shù)集合N等勢(shì)的集合稱為無限可數(shù)集(無限可列集),把與實(shí)數(shù)集合R等勢(shì)的集合稱為連續(xù)集。有限可數(shù)集和無限可數(shù)集又通稱為可數(shù)集(可列集),非可數(shù)集合統(tǒng)稱為不可數(shù)集合(不可列集合)。定義3.27設(shè)想把一切集合進(jìn)行分類,凡彼此等勢(shì)的歸于一類,不等勢(shì)的歸于不同的類,對(duì)于每一類集合,我們給予一個(gè)標(biāo)志來度量其元素的多少,稱這個(gè)標(biāo)志為這類集合的基數(shù)。對(duì)有限集,其基數(shù)就是集合中元素的個(gè)數(shù)n;對(duì)于與自然數(shù)集合等勢(shì)的集合,其基數(shù)用
(讀作“阿列夫零”)表示;對(duì)于與實(shí)數(shù)集合等勢(shì)的集合,其基數(shù)用
(讀作“阿列夫”)表示。一般,集合A的基數(shù),記為Card(A)或|A|。
下面的康托定理說明不存在最大的基數(shù),即有比實(shí)數(shù)集合R的基數(shù)
更大的基數(shù)存在。3.8多元關(guān)系及其應(yīng)用3.8.1多元關(guān)系
在兩個(gè)以上集合的元素中常常也會(huì)產(chǎn)生某種關(guān)系。例如,學(xué)生的姓名、專業(yè)以及成績(jī)之間的關(guān)系,一個(gè)航班的航空公司、航班號(hào)、出發(fā)地、目的地、起飛時(shí)間和到達(dá)時(shí)間之間的關(guān)系。
本節(jié)研究?jī)蓚€(gè)以上集合的元素之間的關(guān)系,這種關(guān)系叫多元關(guān)系,并且可以用這種多元關(guān)系表示計(jì)算機(jī)數(shù)據(jù)庫中的數(shù)據(jù)。這種表示在我們對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行查詢時(shí)非常有用,例如,哪個(gè)航班在下午3點(diǎn)到4點(diǎn)之間降落在杭州蕭山國際機(jī)場(chǎng)?杭電主修軟件工程或網(wǎng)絡(luò)工程的哪些二年級(jí)學(xué)生平均成績(jī)高于80分?聯(lián)想公司的哪些雇員為這個(gè)公司工作不到5年但月報(bào)酬超過20000人民幣?
將定義3.4進(jìn)行推廣,可以定義有序n元組和n個(gè)集合的笛卡兒積。3.8.2關(guān)系數(shù)據(jù)庫
數(shù)據(jù)庫(Database)是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲(chǔ)和管理數(shù)據(jù)的倉庫。
用戶可以通過數(shù)據(jù)庫管理系統(tǒng)所提供的語言使用數(shù)據(jù)庫中存放的數(shù)據(jù)。這種使用包括下列幾個(gè)方面。(1)數(shù)據(jù)的檢索:從數(shù)據(jù)庫中取出滿足一定條件要求的數(shù)據(jù)。(2)數(shù)據(jù)的插入:將一些數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫中供以后使用。(3)數(shù)據(jù)的修改:修改數(shù)據(jù)庫中指定的數(shù)據(jù)。(4)數(shù)據(jù)的刪除:刪除數(shù)據(jù)庫內(nèi)指定的數(shù)據(jù)。
數(shù)據(jù)庫使用操作所需要的時(shí)間依賴于這些信息的存儲(chǔ)方式。插入數(shù)據(jù)、刪除數(shù)據(jù)、修改數(shù)據(jù)、檢索數(shù)據(jù),以及從一些重疊的數(shù)據(jù)庫中組合數(shù)據(jù)的操作,在一個(gè)大型數(shù)據(jù)庫中每天要執(zhí)行幾百萬次。由于這些操作的重要性,已經(jīng)開發(fā)了數(shù)據(jù)庫表示的各種方法。這里討論其中的一種基于關(guān)系概念的方法,叫做關(guān)系數(shù)據(jù)模型。
數(shù)據(jù)庫內(nèi)的數(shù)據(jù)都按一定格式組織與存放,實(shí)體是數(shù)據(jù)庫中數(shù)據(jù)的基本存放單位,如教師簡(jiǎn)歷、工資單、學(xué)生概況、課程概貌、合同執(zhí)行情況、物資供銷情況等均是實(shí)體。在關(guān)系數(shù)據(jù)庫中,實(shí)體按二維表的形式存放。二維表的每一行叫一個(gè)記錄,它代表一個(gè)完整的數(shù)據(jù),m行表示實(shí)體包含m個(gè)記錄。n列表示實(shí)體有n個(gè)屬性,屬性的取值叫做字段,n個(gè)屬性表示每個(gè)記錄都有n個(gè)字段,如職工簡(jiǎn)歷這個(gè)實(shí)體就有姓名、性別、年齡等屬性,而一個(gè)記錄中的字段“男”就是“性別”屬性的一個(gè)取值。一個(gè)包含m行n列的實(shí)體,即一張有m行n列的二維表,實(shí)際上就是一個(gè)包含m個(gè)有序n元組的n元關(guān)系。例3.36(1)一個(gè)學(xué)生概況實(shí)體S,它有4個(gè)屬性:學(xué)號(hào)、姓名、年齡、所屬系名,分別用S#、SN、SA及SD表示,這個(gè)實(shí)體存放10個(gè)學(xué)生的概況,即有10個(gè)記錄,它可以用有10行4列的二維表表示,如表3.3所示。(2)一個(gè)課程概貌實(shí)體C,它有3個(gè)屬性:課程號(hào)、課程名、先修課程號(hào),分別用C#、CN及PC#表示,這個(gè)實(shí)體存放6門課的概貌,即有6個(gè)記錄,它可以用有6行3列的二維表表示,如表3.4所示。S#SNSASD
C#CNPC#01AB20CS
01OS0202AC21MA
02PL0503AD22MA
03DB0604AE21CS
04ML0505AF20CS
05MC0606AG20CS
06DS0407AH22MA
08AI23MA
09AJ21CS
10AK19MA
表3.3實(shí)體S
表3.4實(shí)體C
在實(shí)體中,如果根據(jù)某個(gè)屬性的取值就能檢索每個(gè)記錄,我們就叫這個(gè)屬性為主鍵碼。這就是說,當(dāng)實(shí)體中沒有兩個(gè)記錄在這個(gè)屬性有相同的值時(shí),這個(gè)屬性就是主鍵碼。在例3.36中,S#屬性就是實(shí)體S的主鍵碼,而SD屬性則不是主鍵碼。
因?yàn)橹麈I碼用于唯一地標(biāo)識(shí)實(shí)體中的記錄,當(dāng)新的記錄被加到這個(gè)實(shí)體時(shí),主鍵碼要繼續(xù)保持有效是非常重要的。因此,應(yīng)該做檢測(cè)以保證在主鍵碼中每個(gè)新記錄與二維表中所有其他的記錄不同。例如,使用學(xué)號(hào)作為學(xué)生概況實(shí)體的主鍵碼是有意義的,因?yàn)闆]有兩個(gè)學(xué)生有同樣的學(xué)號(hào)。一個(gè)大學(xué)不應(yīng)該使用姓名屬性作為主鍵碼,因?yàn)橛锌赡軆蓚€(gè)學(xué)生有同樣的姓名。
用戶使用關(guān)系數(shù)據(jù)庫實(shí)際上就是對(duì)一些二維表進(jìn)行檢索、插入、修改和刪除等操作,也就是對(duì)一些多元關(guān)系進(jìn)行這些操作。3.8.3數(shù)據(jù)庫的檢索
用戶對(duì)關(guān)系數(shù)據(jù)庫進(jìn)行檢索不外乎選擇某個(gè)二維表中滿足某些條件的一些行和一些列組成一個(gè)新的二維表。例如,對(duì)表3.3表示的二維表,要求給出年齡大于20歲的學(xué)生的學(xué)號(hào)與姓名就是一種檢索操作,它要求在表3.3中選擇滿足SA>20的那些行,再由這些行中選出屬性學(xué)號(hào)與姓名。
這種檢索操作的結(jié)果還是一張二維表,這個(gè)新的二維表有兩個(gè)屬性以及一些滿足SA>20的記錄。由此可見,檢索是由一張表到另一張表的操作,從數(shù)學(xué)的觀點(diǎn)看,檢索是一種一元運(yùn)算,它根據(jù)一個(gè)多元關(guān)系得出另一個(gè)多元關(guān)系。
下面我們來定義兩種一元檢索運(yùn)算,一種叫投影運(yùn)算,另一種叫選擇運(yùn)算,然后由這兩種運(yùn)算對(duì)關(guān)系數(shù)據(jù)庫進(jìn)行各種各樣的檢索。例3.37在學(xué)生概貌實(shí)體S中取出學(xué)生姓名是投影運(yùn)算
sn(S),在課程概貌實(shí)體C中取出課程號(hào)和課程名是投影運(yùn)算
c#,cn(C)。在學(xué)生概貌實(shí)體S中取出年齡大于20歲的數(shù)學(xué)系的學(xué)生概貌是選擇運(yùn)算
sa>20^sd=ma(S),在課程概貌實(shí)體C中取出先修課程號(hào)為05的課程概況是選擇運(yùn)算
pc#=05(C)。運(yùn)算結(jié)果
sn(S)、
c#,cn(C)、
sa>20^sd=ma(S)和
pc#=05(C)如表3.5、表3.6、表3.7和表3.8所示。SN
C#CN
S#SNSASD
C#CNPC#AB
01OS
02AC21MA
02PL05AC
02PL
03AD22MA
04ML05AD
03DB
07AH22MA
AE
04ML
08AI23MA
AF
05MC
AG
06DS
AH
AI
AJ
AK
表3.5
sn(S)
表3.6
c#,cn(C)
表3.7
sa
20
sd=ma(S)
表3.8
pc#=05(C)
聯(lián)合應(yīng)用投影運(yùn)算
和選擇運(yùn)算
就可以在關(guān)系數(shù)據(jù)庫檢索出所要求的任意行與任意列的內(nèi)容,例如,本小節(jié)前面的給出年齡大于20歲的學(xué)生的學(xué)號(hào)與姓名就是運(yùn)算
sn
SA>20(S),取出所有計(jì)算機(jī)系的學(xué)生的名單是運(yùn)算
sn
sd=cs(S)。
C#CNPC
C#CNPC07PP05
01OS0208RP07
02PL05
03DB06
04ML05
05MC06
06DS04
07PP05
08RP07表3.9增設(shè)的課程
表3.10實(shí)體C∪C'3.8.4插入、刪除與修改
所謂插入操作就是在實(shí)體中增加一些記錄,換句話說,就是在多元關(guān)系中增加一些有序元組,這種操作相當(dāng)于集合的并運(yùn)算。而所謂刪除操作就是在實(shí)體中除去一些記錄,換句話說,就是在關(guān)系中除去一些有序元組,這種操作相當(dāng)于集合的差運(yùn)算。例3.38設(shè)某系開設(shè)課程之概況由表3.4表示的實(shí)體C表示,現(xiàn)增設(shè)兩門課,其概況如表3.9所示,請(qǐng)將此兩門課之概況插入實(shí)體C中。解
表3.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年工廠股東合資經(jīng)營協(xié)議模板
- 2024年新款家用沙發(fā)獨(dú)家代理協(xié)議
- 城市供水業(yè)務(wù)承包管理協(xié)議樣本
- 2024建筑工人勞動(dòng)協(xié)議格式
- 2024技術(shù)工人勞動(dòng)協(xié)議樣本
- 2024年化電腦設(shè)備修理協(xié)議
- 2024年度人力資源部門總監(jiān)聘任協(xié)議
- 2024建筑設(shè)施維修協(xié)議樣本
- 2024年知識(shí)產(chǎn)權(quán)使用權(quán)讓渡協(xié)議
- 2024年草牧場(chǎng)租賃承包協(xié)議稿
- 滬教牛津版五年級(jí)下冊(cè)小學(xué)英語全冊(cè)單元知識(shí)點(diǎn)小結(jié)
- 數(shù)學(xué)教研組磨課總結(jié)
- 醫(yī)學(xué)Ev3頸動(dòng)脈支架和保護(hù)傘課件
- 民事案件卷宗范本
- 《保健按摩師》(四級(jí))理論知識(shí)鑒定要素細(xì)目表
- 《船舶柴油機(jī)》教案48頁
- 扣眼穿刺的護(hù)理體會(huì)
- 試驗(yàn)設(shè)計(jì)與數(shù)據(jù)處理(第二版)李云雁(全書ppt)PPT課件
- 七年級(jí)數(shù)學(xué)上冊(cè)《同類項(xiàng)》課件_華東師大版
- 烹飪工藝與營養(yǎng)專業(yè)(高專)教學(xué)計(jì)劃
- 安全教育教學(xué)大綱
評(píng)論
0/150
提交評(píng)論