版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、,An Introduction to Database System,數(shù)據(jù)庫(kù)系統(tǒng)概論 An Introduction to Database System 第二章 關(guān)系數(shù)據(jù)庫(kù),關(guān)系數(shù)據(jù)庫(kù)簡(jiǎn)介,提出關(guān)系模型的是美國(guó)IBM公司的E.F.Codd 1970年提出關(guān)系數(shù)據(jù)模型 E.F.Codd, “A Relational Model of Data for Large Shared Data Banks”, Communication of the ACM,1970 之后,提出了關(guān)系代數(shù)和關(guān)系演算的概念 1972年提出了關(guān)系的第一、第二、第三范式 1974年提出了關(guān)系的BC范式,An Introd
2、uction to Database System,第二章 關(guān)系數(shù)據(jù)庫(kù),2.1 關(guān)系數(shù)據(jù)結(jié)構(gòu)及形式化定義 2.2 關(guān)系操作 2.3 關(guān)系的完整性 2.4 關(guān)系代數(shù) 2.5 關(guān)系演算 2.6 小結(jié),An Introduction to Database System,2.1 關(guān)系數(shù)據(jù)結(jié)構(gòu)及形式化定義,2.1.1 關(guān)系 2.1.2 關(guān)系模式 2.1.3 關(guān)系數(shù)據(jù)庫(kù),An Introduction to Database System,2.1.1 關(guān)系,單一的數(shù)據(jù)結(jié)構(gòu)-關(guān)系 現(xiàn)實(shí)世界的實(shí)體以及實(shí)體間的各種聯(lián)系均用關(guān)系來(lái)表示 邏輯結(jié)構(gòu)-二維表 從用戶角度,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表 建立在集
3、合代數(shù)的基礎(chǔ)上,An Introduction to Database System,關(guān)系(續(xù)), 域(Domain) 2. 笛卡爾積(Cartesian Product) 3. 關(guān)系(Relation),An Introduction to Database System, 域(Domain),域是一組具有相同數(shù)據(jù)類型的值的集合。例: 整數(shù) 實(shí)數(shù) 介于某個(gè)取值范圍的整數(shù) 長(zhǎng)度指定長(zhǎng)度的字符串集合 男,女 .,An Introduction to Database System,2. 笛卡爾積(Cartesian Product),笛卡爾積 給定一組域D1,D2,Dn,這些域中可以有相同的。
4、D1,D2,Dn的笛卡爾積為: D1D2Dn (d1,d2,dn)diDi,i1,2,n 所有域的所有取值的一個(gè)組合 不能重復(fù),An Introduction to Database System,笛卡爾積(續(xù)),元組(Tuple) 笛卡爾積中每一個(gè)元素(d1,d2,dn)叫作一個(gè)n元組(n-tuple)或簡(jiǎn)稱元組(Tuple) (張清玫,計(jì)算機(jī)專業(yè),李勇)、(張清玫,計(jì)算機(jī)專業(yè),劉晨)等都是元組 分量(Component) 笛卡爾積元素(d1,d2,dn)中的每一個(gè)值di叫作一個(gè)分量 張清玫、計(jì)算機(jī)專業(yè)、李勇、劉晨等都是分量,An Introduction to Database Syste
5、m,笛卡爾積(續(xù)),基數(shù)(Cardinal number) 若Di(i1,2,n)為有限集,其基數(shù)為mi(i1,2,n),則D1D2Dn的基數(shù)M為: 笛卡爾積的表示方法 笛卡爾積可表示為一個(gè)二維表 表中的每行對(duì)應(yīng)一個(gè)元組,表中的每列對(duì)應(yīng)一個(gè)域,An Introduction to Database System,An Introduction to Database System,3. 關(guān)系(Relation),1) 關(guān)系 D1D2Dn的子集叫作在域D1,D2,Dn上的關(guān)系,表示為 R(D1,D2,Dn) R:關(guān)系名 n:關(guān)系的目或度(Degree),An Introduction to Da
6、tabase System,關(guān)系(續(xù)),2) 元組 關(guān)系中的每個(gè)元素是關(guān)系中的元組,通常用t表示。 3) 單元關(guān)系與二元關(guān)系 當(dāng)n=1時(shí),稱該關(guān)系為單元關(guān)系(Unary relation) 或一元關(guān)系 當(dāng)n=2時(shí),稱該關(guān)系為二元關(guān)系(Binary relation),An Introduction to Database System,關(guān)系(續(xù)),4) 關(guān)系的表示 關(guān)系也是一個(gè)二維表,表的每行對(duì)應(yīng)一個(gè)元組,表的每列對(duì)應(yīng)一個(gè)域,An Introduction to Database System,關(guān)系(續(xù)),5)屬性 關(guān)系中不同列可以對(duì)應(yīng)相同的域 為了加以區(qū)分,必須對(duì)每列起一個(gè)名字,稱為屬性(A
7、ttribute) n目關(guān)系必有n個(gè)屬性,An Introduction to Database System,關(guān)系(續(xù)),6) 碼 候選碼(Candidate key) 若關(guān)系中的某一屬性組的值能唯一地標(biāo)識(shí)一個(gè)元組,則稱該屬性組為候選碼 簡(jiǎn)單的情況:候選碼只包含一個(gè)屬性 全碼(All-key) 最極端的情況:關(guān)系模式的所有屬性組是這個(gè)關(guān)系模式的候選碼,稱為全碼(All-key),An Introduction to Database System,關(guān)系(續(xù)),碼(續(xù)) 主碼 若一個(gè)關(guān)系有多個(gè)候選碼,則選定其中一個(gè)為主碼(Primary key) 主屬性 候選碼的諸屬性稱為主屬性(Prime
8、attribute) 不包含在任何侯選碼中的屬性稱為非主屬性( Non-Prime attribute) 或非碼屬性(Non-key attribute),An Introduction to Database System,關(guān)系(續(xù)),D1,D2,Dn的笛卡爾積的某個(gè)子集才有實(shí)際含義 例:表2.1 的笛卡爾積沒(méi)有實(shí)際意義 取出有實(shí)際意義的元組來(lái)構(gòu)造關(guān)系 關(guān)系:SAP(SUPERVISOR,SPECIALITY,POSTGRADUATE) 假設(shè):導(dǎo)師與專業(yè):1:1, 導(dǎo)師與研究生:1:n 主碼:POSTGRADUATE(假設(shè)研究生不會(huì)重名) SAP關(guān)系可以包含三個(gè)元組 (張清玫,計(jì)算機(jī)專業(yè),李
9、勇), (張清玫,計(jì)算機(jī)專業(yè),劉晨), (劉逸,信息專業(yè),王敏) ,An Introduction to Database System,關(guān)系(續(xù)),7) 三類關(guān)系 基本關(guān)系(基本表或基表) 實(shí)際存在的表,是實(shí)際存儲(chǔ)數(shù)據(jù)的邏輯表示 查詢表 查詢結(jié)果對(duì)應(yīng)的表 視圖表 由基本表或其他視圖表導(dǎo)出的表,是虛表,不對(duì) 應(yīng)實(shí)際存儲(chǔ)的數(shù)據(jù),An Introduction to Database System,關(guān)系(續(xù)),8)基本關(guān)系的性質(zhì) 列是同質(zhì)的(Homogeneous) 不同的列可出自同一個(gè)域 其中的每一列稱為一個(gè)屬性 不同的屬性要給予不同的屬性名 列的順序無(wú)所謂,,列的次序可以任意交換 任意兩個(gè)元組
10、的候選碼不能相同 行的順序無(wú)所謂,行的次序可以任意交換,An Introduction to Database System,基本關(guān)系的性質(zhì)(續(xù)), 分量必須取原子值 這是規(guī)范條件中最基本的一條 表2.3 非規(guī)范化關(guān)系,An Introduction to Database System,2.1 關(guān)系數(shù)據(jù)結(jié)構(gòu),2.1.1 關(guān)系 2.1.2 關(guān)系模式 2.1.3 關(guān)系數(shù)據(jù)庫(kù),An Introduction to Database System,2.1.2 關(guān)系模式,1什么是關(guān)系模式 2定義關(guān)系模式 3. 關(guān)系模式與關(guān)系,An Introduction to Database System,1什么
11、是關(guān)系模式,關(guān)系模式(Relation Schema)是型 關(guān)系是值 關(guān)系模式是對(duì)關(guān)系的描述 元組集合的結(jié)構(gòu) 屬性構(gòu)成 屬性來(lái)自的域 屬性與域之間的映象關(guān)系 元組語(yǔ)義以及完整性約束條件 屬性間的數(shù)據(jù)依賴關(guān)系集合,An Introduction to Database System,2定義關(guān)系模式,關(guān)系模式可以形式化地表示為: R(U,D,DOM,F(xiàn)) R 關(guān)系名 U 組成該關(guān)系的屬性名集合 D 屬性組U中屬性所來(lái)自的域 DOM 屬性向域的映象集合 F 屬性間的數(shù)據(jù)依賴關(guān)系集合,An Introduction to Database System,定義關(guān)系模式 (續(xù)),例: 導(dǎo)師和研究生出自同一
12、個(gè)域人, 取不同的屬性名,并在模式中定義屬性向域 的映象,即說(shuō)明它們分別出自哪個(gè)域: DOM(SUPERVISOR-PERSON) = DOM(POSTGRADUATE-PERSON) =PERSON,An Introduction to Database System,定義關(guān)系模式 (續(xù)),關(guān)系模式通常可以簡(jiǎn)記為 R (U) 或 R (A1,A2,An) R: 關(guān)系名 A1,A2,An : 屬性名 注:域名及屬性向域的映象常常直接說(shuō)明為 屬性的類型、長(zhǎng)度,An Introduction to Database System,3. 關(guān)系模式與關(guān)系,關(guān)系模式 對(duì)關(guān)系的描述 靜態(tài)的、穩(wěn)定的 關(guān)系
13、關(guān)系模式在某一時(shí)刻的狀態(tài)或內(nèi)容 動(dòng)態(tài)的、隨時(shí)間不斷變化的 關(guān)系模式和關(guān)系往往統(tǒng)稱為關(guān)系 通過(guò)上下文加以區(qū)別,An Introduction to Database System,2.1 關(guān)系數(shù)據(jù)結(jié)構(gòu),2.1.1 關(guān)系 2.1.2 關(guān)系模式 2.1.3 關(guān)系數(shù)據(jù)庫(kù),An Introduction to Database System,2.1.3 關(guān)系數(shù)據(jù)庫(kù),關(guān)系數(shù)據(jù)庫(kù) 在一個(gè)給定的應(yīng)用領(lǐng)域中,所有關(guān)系的集合構(gòu)成一個(gè)關(guān)系數(shù)據(jù)庫(kù) 關(guān)系數(shù)據(jù)庫(kù)的型與值,An Introduction to Database System,2. 關(guān)系數(shù)據(jù)庫(kù)的型與值,關(guān)系數(shù)據(jù)庫(kù)的型: 關(guān)系數(shù)據(jù)庫(kù)模式對(duì)關(guān)系數(shù)據(jù)庫(kù)的描述。 關(guān)
14、系數(shù)據(jù)庫(kù)模式包括 若干域的定義 在這些域上定義的若干關(guān)系模式 關(guān)系數(shù)據(jù)庫(kù)的值: 關(guān)系模式在某一時(shí)刻對(duì)應(yīng)的關(guān)系的集合,簡(jiǎn)稱為關(guān)系數(shù)據(jù)庫(kù),An Introduction to Database System,第二章 關(guān)系數(shù)據(jù)庫(kù),2.1 關(guān)系模型概述 2.2 關(guān)系操作 2.3 關(guān)系的完整性 2.4 關(guān)系代數(shù) 2.5 關(guān)系演算 2.6 小結(jié),An Introduction to Database System,2.2.1基本關(guān)系操作,常用的關(guān)系操作 查詢:選擇、投影、連接、除、并、交、差 數(shù)據(jù)更新:插入、刪除、修改 查詢的表達(dá)能力是其中最主要的部分 選擇、投影、并、差、笛卡爾基是5種基本操作 關(guān)系操作
15、的特點(diǎn) 集合操作方式:操作的對(duì)象和結(jié)果都是集合,一次一集合的方式,An Introduction to Database System,2.2.2 關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言的分類,關(guān)系代數(shù)語(yǔ)言 用對(duì)關(guān)系的運(yùn)算來(lái)表達(dá)查詢要求 代表:ISBL 關(guān)系演算語(yǔ)言:用謂詞來(lái)表達(dá)查詢要求 元組關(guān)系演算語(yǔ)言 謂詞變?cè)幕緦?duì)象是元組變量 代表:APLHA, QUEL 域關(guān)系演算語(yǔ)言 謂詞變?cè)幕緦?duì)象是域變量 代表:QBE 具有關(guān)系代數(shù)和關(guān)系演算雙重特點(diǎn)的語(yǔ)言 代表:SQL(Structured Query Language),An Introduction to Database System,第二章 關(guān)系數(shù)據(jù)庫(kù),2
16、.1 關(guān)系數(shù)據(jù)結(jié)構(gòu)及形式化定義 2.2 關(guān)系操作 2.3 關(guān)系的完整性 2.4 關(guān)系代數(shù) 2.5 關(guān)系演算 2.6 小結(jié),An Introduction to Database System,2.3 關(guān)系的完整性,2.3.1 關(guān)系的三類完整性約束 2.3.2 實(shí)體完整性 2.3.3 參照完整性 2.3.4 用戶定義的完整性,An Introduction to Database System,2.3.1 關(guān)系的三類完整性約束,實(shí)體完整性和參照完整性: 關(guān)系模型必須滿足的完整性約束條件 稱為關(guān)系的兩個(gè)不變性,應(yīng)該由關(guān)系系統(tǒng)自動(dòng)支持 用戶定義的完整性: 應(yīng)用領(lǐng)域需要遵循的約束條件,體現(xiàn)了具體領(lǐng)域中
17、的語(yǔ)義約束,An Introduction to Database System,2.3 關(guān)系的完整性,2.3.1關(guān)系的三類完整性約束 2.3.2 實(shí)體完整性 2.3.3 參照完整性 2.3.4 用戶定義的完整性,An Introduction to Database System,2.3.2 實(shí)體完整性,規(guī)則2.1 實(shí)體完整性規(guī)則(Entity Integrity) 若屬性A是基本關(guān)系R的主屬性,則屬性A不能取空值 例: SAP(SUPERVISOR,SPECIALITY,POSTGRADUATE) POSTGRADUATE: 主碼(假設(shè)研究生不會(huì)重名) 不能取空值,An Introduct
18、ion to Database System,實(shí)體完整性(續(xù)),實(shí)體完整性規(guī)則的說(shuō)明 (1) 實(shí)體完整性規(guī)則是針對(duì)基本關(guān)系而言的。一個(gè)基本表通常對(duì)應(yīng)現(xiàn) 實(shí)世界的一個(gè)實(shí)體集。 (2) 現(xiàn)實(shí)世界中的實(shí)體是可區(qū)分的,即它們具有某種唯一性標(biāo)識(shí)。 (3) 關(guān)系模型中以主碼作為唯一性標(biāo)識(shí)。 (4) 主碼中的屬性即主屬性不能取空值。 主屬性取空值,就說(shuō)明存在某個(gè)不可標(biāo)識(shí)的實(shí)體,即存在不可區(qū) 分的實(shí)體,這與第(2)點(diǎn)相矛盾,因此這個(gè)規(guī)則稱為實(shí)體完整性,An Introduction to Database System,2.3關(guān)系的完整性,2.3.1關(guān)系的三類完整性約束 2.3.2 實(shí)體完整性 2.3.3 參
19、照完整性 2.3.4 用戶定義的完整性,An Introduction to Database System,2.3.3 參照完整性,1. 關(guān)系間的引用 2. 外碼 3. 參照完整性規(guī)則,An Introduction to Database System,1. 關(guān)系間的引用,在關(guān)系模型中實(shí)體及實(shí)體間的聯(lián)系都是用關(guān)系來(lái)描 述的,因此可能存在著關(guān)系與關(guān)系間的引用。 例1 學(xué)生實(shí)體、專業(yè)實(shí)體 學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡) 專業(yè)(專業(yè)號(hào),專業(yè)名),An Introduction to Database System,主碼,主碼,學(xué)生關(guān)系引用了專業(yè)關(guān)系的主碼“專業(yè)號(hào)”。 學(xué)生關(guān)系中的“專業(yè)號(hào)
20、”值必須是確實(shí)存在的專業(yè)的專業(yè)號(hào) ,即專業(yè) 關(guān)系中有該專業(yè)的記錄。,關(guān)系間的引用(續(xù)),例2 學(xué)生、課程、學(xué)生與課程之間的多對(duì)多聯(lián)系 學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡) 課程(課程號(hào),課程名,學(xué)分) 選修(學(xué)號(hào),課程號(hào),成績(jī)),An Introduction to Database System,關(guān)系間的引用(續(xù)),例3 學(xué)生實(shí)體及其內(nèi)部的一對(duì)多聯(lián)系 學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡,班長(zhǎng)),An Introduction to Database System,“學(xué)號(hào)”是主碼,“班長(zhǎng)”是外碼,它引用了本關(guān)系的“學(xué)號(hào)” “班長(zhǎng)” 必須是確實(shí)存在的學(xué)生的學(xué)號(hào),2外碼(Foreign Key
21、),設(shè)F是基本關(guān)系R的一個(gè)或一組屬性,但不是關(guān)系R的碼。如果F與基本關(guān)系S的主碼Ks相對(duì)應(yīng),則稱F是基本關(guān)系R的外碼 基本關(guān)系R稱為參照關(guān)系(Referencing Relation) 基本關(guān)系S稱為被參照關(guān)系(Referenced Relation)或目標(biāo)關(guān)系(Target Relation),An Introduction to Database System,外碼(續(xù)),例1:學(xué)生關(guān)系的“專業(yè)號(hào)與專業(yè)關(guān)系的主碼“專業(yè)號(hào)”相對(duì)應(yīng) “專業(yè)號(hào)”屬性是學(xué)生關(guān)系的外碼 專業(yè)關(guān)系是被參照關(guān)系,學(xué)生關(guān)系為參照關(guān)系,An Introduction to Database System,外碼(續(xù)),例2:
22、 選修關(guān)系的“學(xué)號(hào)” 與學(xué)生關(guān)系的主碼“學(xué)號(hào)”相對(duì)應(yīng) 選修關(guān)系的“課程號(hào)”與課程關(guān)系的主碼“課程號(hào)”相對(duì)應(yīng) “學(xué)號(hào)”和“課程號(hào)”是選修關(guān)系的外碼 學(xué)生關(guān)系和課程關(guān)系均為被參照關(guān)系 選修關(guān)系為參照關(guān)系,An Introduction to Database System,外碼(續(xù)),例3:“班長(zhǎng)”與本身的主碼“學(xué)號(hào)”相對(duì)應(yīng) “班長(zhǎng)”是外碼 學(xué)生關(guān)系既是參照關(guān)系也是被參照關(guān)系,An Introduction to Database System,外碼(續(xù)),關(guān)系R和S不一定是不同的關(guān)系 目標(biāo)關(guān)系S的主碼Ks 和參照關(guān)系的外碼F必須定義在同一個(gè)(或一組)域上 外碼并不一定要與相應(yīng)的主碼同名 當(dāng)外碼與
23、相應(yīng)的主碼屬于不同關(guān)系時(shí),往往取相同的名字,以便于識(shí)別,An Introduction to Database System,3. 參照完整性規(guī)則,規(guī)則2.2 參照完整性規(guī)則 若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼它與基本關(guān)系S的主碼Ks相對(duì)應(yīng)(基本關(guān)系R和S不一定是不同的關(guān)系),則對(duì)于R中每個(gè)元組在F上的值必須為: 或者取空值(F的每個(gè)屬性值均為空值) 或者等于S中某個(gè)元組的主碼值,An Introduction to Database System,參照完整性規(guī)則(續(xù)),例1: 學(xué)生關(guān)系中每個(gè)元組的“專業(yè)號(hào)”屬性只取兩類值: (1)空值,表示尚未給該學(xué)生分配專業(yè) (2)非空值,這時(shí)該值必須
24、是專業(yè)關(guān)系中某個(gè)元組的“專業(yè)號(hào)”值,表示該學(xué)生不可能分配一個(gè)不存在的專業(yè),An Introduction to Database System,參照完整性規(guī)則(續(xù)),例2 : 選修(學(xué)號(hào),課程號(hào),成績(jī)) “學(xué)號(hào)”和“課程號(hào)”可能的取值 : (1)選修關(guān)系中的主屬性,不能取空值 (2)只能取相應(yīng)被參照關(guān)系中已經(jīng)存在的主碼值,An Introduction to Database System,參照完整性規(guī)則(續(xù)),例3: 學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡,班長(zhǎng)) “班長(zhǎng)”屬性值可以取兩類值: (1)空值,表示該學(xué)生所在班級(jí)尚未選出班長(zhǎng) (2)非空值,該值必須是本關(guān)系中某個(gè)元組的學(xué)號(hào)值,An
25、Introduction to Database System,關(guān)系的完整性(續(xù)),2.3.1關(guān)系的三類完整性約束 2.3.2 實(shí)體完整性 2.3.3 參照完整性 2.3.4 用戶定義的完整性,An Introduction to Database System,2.3.4 用戶定義的完整性,針對(duì)某一具體關(guān)系數(shù)據(jù)庫(kù)的約束條件,反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語(yǔ)義要求 關(guān)系模型應(yīng)提供定義和檢驗(yàn)這類完整性的機(jī)制,以便用統(tǒng)一的系統(tǒng)的方法處理它們,而不要由應(yīng)用程序承擔(dān)這一功能,An Introduction to Database System,用戶定義的完整性(續(xù)),例: 課程(課程號(hào),課程名
26、,學(xué)分) “課程號(hào)”屬性必須取唯一值 非主屬性“課程名”也不能取空值 “學(xué)分”屬性只能取值1,2,3,4,An Introduction to Database System,An Introduction to Database Systems,2.4 關(guān)系代數(shù),概述 傳統(tǒng)的集合運(yùn)算 專門(mén)的關(guān)系運(yùn)算,An Introduction to Database Systems,表2.4 關(guān)系代數(shù)運(yùn)算符,概 述,An Introduction to Database Systems,表2.4 關(guān)系代數(shù)運(yùn)算符(續(xù)),概 述(續(xù)),An Introduction to Database Systems,
27、2.4 關(guān)系代數(shù),概述 傳統(tǒng)的集合運(yùn)算 專門(mén)的關(guān)系運(yùn)算,An Introduction to Database Systems,1. 并(Union),R和S 具有相同的目n(即兩個(gè)關(guān)系都有n個(gè)屬性) 相應(yīng)的屬性取自同一個(gè)域 RS 仍為n目關(guān)系,由屬于R或?qū)儆赟的元組組成 RS = t|t Rt S ,An Introduction to Database Systems,并(續(xù)),An Introduction to Database Systems,2. 差(Difference),R和S 具有相同的目n 相應(yīng)的屬性取自同一個(gè)域 R - S 仍為n目關(guān)系,由屬于R而不屬于S的所有元組組成
28、R -S = t|tRtS ,An Introduction to Database Systems,差(續(xù)),An Introduction to Database Systems,3. 交(Intersection),R和S 具有相同的目n 相應(yīng)的屬性取自同一個(gè)域 RS 仍為n目關(guān)系,由既屬于R又屬于S的元組組成 RS = t|t Rt S RS = R (R-S),An Introduction to Database Systems,交 (續(xù)),An Introduction to Database Systems,4. 笛卡爾積(Cartesian Product),嚴(yán)格地講應(yīng)該是廣
29、義的笛卡爾積(Extended Cartesian Product) R: n目關(guān)系,k1個(gè)元組 S: m目關(guān)系,k2個(gè)元組 RS 列:(n+m)列元組的集合 元組的前n列是關(guān)系R的一個(gè)元組 后m列是關(guān)系S的一個(gè)元組 行:k1k2個(gè)元組 RS = tr ts |tr R tsS ,An Introduction to Database Systems,交 (續(xù)),An Introduction to Database Systems,2.4 關(guān)系代數(shù),概述 傳統(tǒng)的集合運(yùn)算 專門(mén)的關(guān)系運(yùn)算,An Introduction to Database Systems,2.4.2 專門(mén)的關(guān)系運(yùn)算,先引入
30、幾個(gè)記號(hào) (1) R,tR,tAi 設(shè)關(guān)系模式為R(A1,A2,An) 它的一個(gè)關(guān)系設(shè)為R tR表示t是R的一個(gè)元組 tAi則表示元組t中相應(yīng)于屬性Ai的一個(gè)分量,An Introduction to Database Systems,專門(mén)的關(guān)系運(yùn)算(續(xù)),(2) A,tA, A 若A=Ai1,Ai2,Aik,其中Ai1,Ai2,Aik是A1,A2,An中的一部分,則A稱為屬性列或?qū)傩越M。 tA=(tAi1,tAi2,tAik)表示元組t在屬性列A上諸分量的集合。 A則表示A1,A2,An中去掉Ai1,Ai2,Aik后剩余的屬性組。,An Introduction to Database Sy
31、stems,專門(mén)的關(guān)系運(yùn)算(續(xù)),(3) tr ts R為n目關(guān)系,S為m目關(guān)系。 tr R,tsS, tr ts稱為元組的連接。 tr ts是一個(gè)n + m列的元組,前n個(gè)分量為R中的一個(gè)n元組,后m個(gè)分量為S中的一個(gè)m元組。,An Introduction to Database Systems,專門(mén)的關(guān)系運(yùn)算(續(xù)),(4)象集Zx 給定一個(gè)關(guān)系R(X,Z),X和Z為屬性組。 當(dāng)tX=x時(shí),x在R中的象集(Images Set)為: Zx=tZ|t R,tX=x 它表示R中屬性組X上值為x的諸元組在Z上分量的集合,An Introduction to Database Systems,專門(mén)
32、的關(guān)系運(yùn)算(續(xù)),x1在R中的象集 Zx1 =Z1,Z2,Z3, x2在R中的象集 Zx2 =Z2,Z3, x3在R中的象集 Zx3=Z1,Z3,象集舉例,An Introduction to Database Systems,專門(mén)的關(guān)系運(yùn)算(續(xù)),選擇 投影 連接 除,An Introduction to Database Systems,專門(mén)的關(guān)系運(yùn)算(續(xù)),(a),Student,4) 學(xué)生-課程數(shù)據(jù)庫(kù): 學(xué)生關(guān)系Student、課程關(guān)系Course和選修關(guān)系SC,An Introduction to Database Systems,專門(mén)的關(guān)系運(yùn)算(續(xù)),Course,(b),An I
33、ntroduction to Database Systems,專門(mén)的關(guān)系運(yùn)算(續(xù)),(c),SC,An Introduction to Database Systems,1. 選擇(Selection),1) 選擇又稱為限制(Restriction) 2) 選擇運(yùn)算符的含義 在關(guān)系R中選擇滿足給定條件的諸元組 F(R) = t|tRF(t)= 真 F:選擇條件,是一個(gè)邏輯表達(dá)式,基本形式為: X1Y1,An Introduction to Database Systems,選擇(續(xù)),3) 選擇運(yùn)算是從關(guān)系R中選取使邏輯表達(dá)式F為真的元組,是從行的角度進(jìn)行的運(yùn)算,An Introductio
34、n to Database Systems,選擇(續(xù)),例1 查詢信息系(IS系)全體學(xué)生 Sdept = IS (Student) 或 5 =IS (Student) 結(jié)果:,An Introduction to Database Systems,選擇(續(xù)),例2 查詢年齡小于20歲的學(xué)生 Sage 20(Student) 或 4 20(Student) 結(jié)果:,An Introduction to Database Systems,2. 投影(Projection),1)投影運(yùn)算符的含義 從R中選擇出若干屬性列組成新的關(guān)系 A(R) = tA | t R A:R中的屬性列,An Intro
35、duction to Database Systems,2. 投影(Projection),2)投影操作主要是從列的角度進(jìn)行運(yùn)算 但投影之后不僅取消了原關(guān)系中的某些列,而且還可能取消某些元組(避免重復(fù)行),An Introduction to Database Systems,投影(續(xù)),例3 查詢學(xué)生的姓名和所在系 即求Student關(guān)系上學(xué)生姓名和所在系兩個(gè)屬性上的投影 Sname,Sdept(Student) 或 2,5(Student) 結(jié)果:,An Introduction to Database Systems,投影(續(xù)),An Introduction to Database S
36、ystems,投影(續(xù)),例4 查詢學(xué)生關(guān)系Student中都有哪些系 Sdept(Student) 結(jié)果:,An Introduction to Database Systems,3. 連接(Join),1)連接也稱為連接 2)連接運(yùn)算的含義 從兩個(gè)關(guān)系的笛卡爾積中選取屬性間滿足一定條件的元組 R S = | tr Rts StrAtsB A和B:分別為R和S上度數(shù)相等且可比的屬性組 :比較運(yùn)算符 連接運(yùn)算從R和S的廣義笛卡爾積RS中選?。≧關(guān)系)在A屬性組上的值與(S關(guān)系)在B屬性組上值滿足比較關(guān)系的元組,An Introduction to Database Systems,連接(續(xù)),
37、3)兩類常用連接運(yùn)算 等值連接(equijoin) 什么是等值連接 為“”的連接運(yùn)算稱為等值連接 等值連接的含義 從關(guān)系R與S的廣義笛卡爾積中選取A、B屬性值相等的那些元組,即等值連接為: R S = | tr Rts StrA = tsB ,A=B,An Introduction to Database Systems,連接(續(xù)),自然連接(Natural join) 自然連接是一種特殊的等值連接 兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組 在結(jié)果中把重復(fù)的屬性列去掉 自然連接的含義 R和S具有相同的屬性組B R S = | tr Rts StrB = tsB ,An Introductio
38、n to Database Systems,連接(續(xù)),4)一般的連接操作是從行的角度進(jìn)行運(yùn)算。 自然連接還需要取消重復(fù)列,所以是同時(shí)從行和列的角度進(jìn)行運(yùn)算。,An Introduction to Database Systems,連接(續(xù)),例5關(guān)系R和關(guān)系S 如下所示:,An Introduction to Database Systems,連接(續(xù)),一般連接 R S的結(jié)果如下:,CE,An Introduction to Database Systems,連接(續(xù)),等值連接 R S 的結(jié)果如下:,An Introduction to Database Systems,連接(續(xù)),自然
39、連接 R S的結(jié)果如下:,An Introduction to Database Systems,連接(續(xù)),外連接 如果把舍棄的元組也保存在結(jié)果關(guān)系中,而在其他屬性上填空值(Null),這種連接就叫做外連接(OUTER JOIN)。 左外連接 如果只把左邊關(guān)系R中要舍棄的元組保留就叫做左外連接(LEFT OUTER JOIN或LEFT JOIN) 右外連接 如果只把右邊關(guān)系S中要舍棄的元組保留就叫做右外連接(RIGHT OUTER JOIN或RIGHT JOIN)。,An Introduction to Database Systems,連接(續(xù)),下圖是例5中關(guān)系R和關(guān)系S的外連接,An
40、Introduction to Database Systems,連接(續(xù)),圖(b)是例5中關(guān)系R和關(guān)系S的左外連接,圖(c)是右外連接,An Introduction to Database Systems,4. 除(Division),給定關(guān)系R (X,Y) 和S (Y,Z),其中X,Y,Z為屬性組。 R中的Y與S中的Y可以有不同的屬性名,但必須出自相同的域集。 R與S的除運(yùn)算得到一個(gè)新的關(guān)系P(X), P是R中滿足下列條件的元組在 X 屬性列上的投影: 元組在X上分量值x的象集Yx包含S在Y上投影的集合,記作: RS = tr X | tr RY (S) Yx Yx:x在R中的象集,x
41、 = trX,An Introduction to Database Systems,除(續(xù)),2)除操作是同時(shí)從行和列角度進(jìn)行運(yùn)算,An Introduction to Database Systems,除(續(xù)),例6設(shè)關(guān)系R、S分別為下圖的(a)和(b),RS的結(jié)果為圖(c),An Introduction to Database Systems,分析,在關(guān)系R中,A可以取四個(gè)值a1,a2,a3,a4 a1的象集為 (b1,c2),(b2,c3),(b2,c1) a2的象集為 (b3,c7),(b2,c3) a3的象集為 (b4,c6) a4的象集為 (b6,c6) S在(B,C)上的投影
42、為 (b1,c2),(b2,c1),(b2,c3) 只有a1的象集包含了S在(B,C)屬性組上的投影 所以 RS =a1,An Introduction to Database Systems,5綜合舉例,以學(xué)生-課程數(shù)據(jù)庫(kù)為例 (P56) 例7 查詢至少選修1號(hào)課程和3號(hào)課程的學(xué)生號(hào)碼 首先建立一個(gè)臨時(shí)關(guān)系K: 然后求:Sno,Cno(SC)K,An Introduction to Database Systems,綜合舉例(續(xù)),例 7續(xù) Sno,Cno(SC) 200215121象集1,2,3 200215122象集2,3 K=1,3 于是:Sno,Cno(SC)K=200215121,
43、An Introduction to Database Systems,綜合舉例(續(xù)),例 8 查詢選修了2號(hào)課程的學(xué)生的學(xué)號(hào)。 Sno(Cno=2(SC) 200215121,200215122,An Introduction to Database Systems,綜合舉例(續(xù)),例9 查詢至少選修了一門(mén)其直接先行課為5號(hào)課程的學(xué)生姓名 Sname(Cpno=5(Course SC Student) 或 Sname(Cpno=5(Course) SC Sno,Sname(Student) 或 Sname (Sno (Cpno=5 (Course) SC) Sno,Sname (Studen
44、t),An Introduction to Database Systems,綜合舉例(續(xù)),例10 查詢選修了全部課程的學(xué)生號(hào)碼和姓名。 Sno,Cno(SC)Cno(Course) Sno,Sname(Student),An Introduction to Database Systems,小結(jié),關(guān)系代數(shù)運(yùn)算 關(guān)系代數(shù)運(yùn)算 并、差、交、笛卡爾積、投影、選擇、連接、除 基本運(yùn)算 并、差、笛卡爾積、投影、選擇 交、連接、除 可以用5種基本運(yùn)算來(lái)表達(dá) 引進(jìn)它們并不增加語(yǔ)言的能力,但可以簡(jiǎn)化表達(dá),An Introduction to Database Systems,小結(jié)(續(xù)),關(guān)系代數(shù)表達(dá)式 關(guān)
45、系代數(shù)運(yùn)算經(jīng)有限次復(fù)合后形成的式子 典型關(guān)系代數(shù)語(yǔ)言 ISBL(Information System Base Language) 由IBM United Kingdom研究中心研制 用于PRTV(Peterlee Relational Test Vehicle)實(shí)驗(yàn)系統(tǒng),An Introduction to Database Systems,第二章 關(guān)系數(shù)據(jù)庫(kù),2.1 關(guān)系模型概述 2.2 關(guān)系數(shù)據(jù)結(jié)構(gòu) 2.3 關(guān)系的完整性 2.4 關(guān)系代數(shù) 2.5 關(guān)系演算 2.6 小結(jié),An Introduction to Database Systems,2.5 關(guān)系演算,關(guān)系演算 以數(shù)理邏輯中的謂詞
46、演算為基礎(chǔ) 按謂詞變?cè)煌?進(jìn)行分類 1.元組關(guān)系演算: 以元組變量作為謂詞變?cè)幕緦?duì)象元組關(guān)系演算語(yǔ)言ALPHA 2.域關(guān)系演算: 以域變量作為謂詞變?cè)幕緦?duì)象 域關(guān)系演算語(yǔ)言QBE,An Introduction to Database Systems,2.5.1 元組關(guān)系演算語(yǔ)言ALPHA,由E.F.Codd提出 INGRES所用的QUEL語(yǔ)言是參照ALPHA語(yǔ)言研制的 語(yǔ)句 檢索語(yǔ)句 GET 更新語(yǔ)句 PUT,HOLD,UPDATE,DELETE,DROP,An Introduction to Database Systems,一、檢索操作,語(yǔ)句格式: GET工作空間名 (定額)(
47、表達(dá)式1) :操作條件 DOWN/UP 表達(dá)式2 定額:規(guī)定檢索的元組個(gè)數(shù) 格式: 數(shù)字 表達(dá)式1:指定語(yǔ)句的操作對(duì)象 格式: 關(guān)系名| 關(guān)系名. 屬性名| 元組變量. 屬性名| 集函數(shù) , 操作條件:將操作結(jié)果限定在滿足條件的元組中 格式: 邏輯表達(dá)式 表達(dá)式2:指定排序方式 格式: 關(guān)系名. 屬性名| 元組變量. 屬性名, ,An Introduction to Database Systems,一、檢索操作,(1)簡(jiǎn)單檢索 GET工作空間名 (表達(dá)式1) 例1 查詢所有被選修的課程號(hào)碼。 GET W (SC.Cno) 例2 查詢所有學(xué)生的數(shù)據(jù)。 GET W (Student),An In
48、troduction to Database Systems,(2)限定的檢索,格式 GET工作空間名(表達(dá)式1):操作條件 例3查詢信息系(IS)中年齡小于20歲的學(xué)生的學(xué)號(hào)和年齡 GET W (Student.Sno,Student.Sage): Student.Sdept=IS Student.Sage20,An Introduction to Database Systems,(3)帶排序的檢索,格式 GET工作空間名(表達(dá)式1):操作條件 DOWN/UP 表達(dá)式2 例4查詢計(jì)算機(jī)科學(xué)系(CS)學(xué)生的學(xué)號(hào)、年齡,結(jié)果按年齡降序排序 GET W (Student.Sno,Student.
49、Sage): Student.Sdept=CS DOWN Student.Sage,An Introduction to Database Systems,(4)帶定額的檢索,格式 GET工作空間名(定額)(表達(dá)式1) :操作條件 DOWN/UP 表達(dá)式2 例5 取出一個(gè)信息系學(xué)生的學(xué)號(hào)。 GET W (1) (Student.Sno): Student.Sdept=IS 例6 查詢信息系年齡最大的三個(gè)學(xué)生的學(xué)號(hào)及其年齡,結(jié)果按年齡降序排序。 GET W (3) (Student.Sno,Student.Sage): Student.Sdept=IS DOWN Student.Sage,An
50、Introduction to Database Systems,(5)用元組變量的檢索,元組變量的含義 表示可以在某一關(guān)系范圍內(nèi)變化(也稱為范圍變量Range Variable) 元組變量的用途 簡(jiǎn)化關(guān)系名:設(shè)一個(gè)較短名字的元組變量來(lái)代替較長(zhǎng)的關(guān)系名。 操作條件中使用量詞時(shí)必須用元組變量。 定義元組變量 格式:RANGE 關(guān)系名 變量名 一個(gè)關(guān)系可以設(shè)多個(gè)元組變量,An Introduction to Database Systems,(6) 用存在量詞的檢索,操作條件中使用量詞時(shí)必須用元組變量 例8 查詢選修2號(hào)課程的學(xué)生名字。 RANGE SC XGET W (Student.Sname
51、): X(X.Sno=Student.SnoX.Cno=2) 例9 查詢選修了這樣課程的學(xué)生學(xué)號(hào),其直接先行課是6號(hào)課程。 RANGE Course CX GET W (SC.Sno): CX (CX.Cno=SC.CnoCX.Pcno=6),An Introduction to Database Systems,用存在量詞的檢索(續(xù)),例10查詢至少選修一門(mén)其先行課為6號(hào)課程的學(xué)生名字 RANGE Course CX SC SCX GET W (Student.Sname): SCX (SCX.Sno=Student.Sno CX (CX.Cno=SCX.CnoCX.Pcno=6) 前束范式
52、形式: GET W (Student.Sname): SCXCX (SCX.Sno=Student.Sno CX.Cno=SCX.CnoCX.Pcno=6),An Introduction to Database Systems,(7)帶有多個(gè)關(guān)系的表達(dá)式的檢索,例11 查詢成績(jī)?yōu)?0分以上的學(xué)生名字與課程名字。 RANGE SC SCX GET W(Student.Sname,Course.Cname): SCX (SCX.Grade90 SCX.Sno=Student.Sno Course.Cno=SCX.Cno),An Introduction to Database Systems,(
53、8)用全稱量詞的檢索,例12 查詢不選1號(hào)課程的學(xué)生名字 RANGE SC SCX GET W (Student.Sname): SCX (SCX.SnoStudent.SnoSCX.Cno1) 用存在量詞表示: RANGE SC SCX GET W (Student.Sname): SCX (SCX.Sno=Student.SnoSCX.Cno=1),An Introduction to Database Systems,(9)用兩種量詞的檢索,例13 查詢選修了全部課程的學(xué)生姓名。 RANGE Course CX SC SCX GET W (Student.Sname): CX SCX (
54、SCX.Sno=Student.Sno SCX.Cno=CX.Cno),An Introduction to Database Systems,(10)用蘊(yùn)函(Implication)的檢索,例14 查詢最少選修了200215122學(xué)生所選課程的學(xué)生學(xué)號(hào) RANGE Couse CX SC SCX SC SCY GET W (Student.Sno): CX(SCX (SCX.Sno=200215122SCX.Cno=CX.Cno) SCY(SCY.Sno=Student.Sno SCY.Cno= CX.Cno),An Introduction to Database Systems,(11)
55、聚集函數(shù),常用聚集函數(shù)(Aggregation function)或內(nèi)部函數(shù)(Build-in function),關(guān)系演算中的聚集函數(shù),An Introduction to Database Systems,聚集函數(shù)(續(xù)),例15 查詢學(xué)生所在系的數(shù)目。 GET W ( COUNT(Student.Sdept) ) COUNT函數(shù)在計(jì)數(shù)時(shí)會(huì)自動(dòng)排除重復(fù)值。 例16 查詢信息系學(xué)生的平均年齡 GET W (AVG(Student.Sage): Student.Sdept=IS ),An Introduction to Database Systems,二、更新操作,(1) 修改操作 (2) 插
56、入操作 (3) 刪除操作,An Introduction to Database Systems,(1)修改操作步驟, 用HOLD語(yǔ)句將要修改的元組從數(shù)據(jù)庫(kù)中讀到工作空間中 HOLD 工作空間名(表達(dá)式1):操作條件 HOLD語(yǔ)句是帶上并發(fā)控制的GET語(yǔ)句 用宿主語(yǔ)言修改工作空間中元組的屬性 用UPDATE語(yǔ)句將修改后的元組送回?cái)?shù)據(jù)庫(kù)中 UPDATE 工作空間名,An Introduction to Database Systems,修改操作(續(xù)),例17 把200215121學(xué)生從計(jì)算機(jī)科學(xué)系轉(zhuǎn)到信息系。 HOLD W (Student.Sno, Student.Sdetp): Studen
57、t.Sno=200215121 (從Student關(guān)系中讀出95007學(xué)生的數(shù)據(jù)) MOVE IS TO W.Sdept (用宿主語(yǔ)言進(jìn)行修改) UPDATE W (把修改后的元組送回Student關(guān)系),An Introduction to Database Systems,(2)插入操作,步驟 用宿主語(yǔ)言在工作空間中建立新元組 用PUT語(yǔ)句把該元組存入指定關(guān)系中 PUT 工作空間名 (關(guān)系名) PUT語(yǔ)句只對(duì)一個(gè)關(guān)系操作,關(guān)系演算中的聚集函數(shù),An Introduction to Database Systems,插入操作(續(xù)),例18 學(xué)校新開(kāi)設(shè)了一門(mén)2學(xué)分的課程“計(jì)算機(jī)組織與結(jié)構(gòu)”,其
58、課程號(hào)為8,直接先行課為6號(hào)課程。插入該課程元組 MOVE 8 TO W.Cno MOVE 計(jì)算機(jī)組織與結(jié)構(gòu) TO W.Cname MOVE 6 TO W.Cpno MOVE 2 TO W.Ccredit PUT W (Course),An Introduction to Database Systems,(3)刪除操作,步驟 用HOLD語(yǔ)句把要?jiǎng)h除的元組從數(shù)據(jù)庫(kù)中讀到工作空間中 用DELETE語(yǔ)句刪除該元組 DELETE 工作空間名,An Introduction to Database Systems,刪除操作(續(xù)),例19 200215125學(xué)生因故退學(xué),刪除該學(xué)生元組 HOLD W (
59、Student): Student.Sno=200215125 DELETE W,An Introduction to Database Systems,刪除操作(續(xù)),例20 將學(xué)號(hào)200215121改為200215126 HOLD W (Student): Student.Sno=200215121 DELETE W MOVE 200215126 TO W.Sno MOVE 李勇 TO W.Sname MOVE 男 TO W.Ssex MOVE 20 TO W.Sage MOVE CS TO W.Sdept PUT W (Student),An Introduction to Databa
60、se Systems,刪除操作(續(xù)),例21 刪除全部學(xué)生 HOLD W (Student) DELETE W 為保證參照完整性 ,刪除Student中元組時(shí)相應(yīng)地要?jiǎng)h除SC中的元組 HOLD W (SC) DELETE W,An Introduction to Database Systems,小結(jié):元組關(guān)系演算語(yǔ)言ALPHA,檢索操作 GET GET工作空間名 (定額)(表達(dá)式1) :操作條件 DOWN/UP 表達(dá)式2 插入操作 建立新元組-PUT 修改操作 HOLD-修改-UPDATE 刪除操作 HOLD-DELETE,An Introduction to Database System
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版跨境電商平臺(tái)傭金比例調(diào)整合同3篇
- 二零二五版?zhèn)€人教育貸款擔(dān)保合同模板3篇
- 二零二五年建筑裝修幫工雇傭合同2篇
- 二零二五版寄賣(mài)合同范本:藝術(shù)品寄售代理中介服務(wù)協(xié)議2篇
- 二零二五版辦公設(shè)備智能化升級(jí)改造合同5篇
- 二零二五版橋梁工程勞務(wù)分包合同模板6篇
- 二零二五版職工住房借款與社區(qū)文化活動(dòng)支持合同3篇
- 二零二五年度黃牛養(yǎng)殖與屠宰行業(yè)購(gòu)銷(xiāo)法律法規(guī)遵守合同3篇
- 二零二五年鋁藝門(mén)安裝與外觀設(shè)計(jì)承包合同3篇
- 二零二五年度電商代發(fā)貨及品牌授權(quán)合同2篇
- 店鋪交割合同范例
- 大型活動(dòng)LED屏幕安全應(yīng)急預(yù)案
- 舞蹈課家長(zhǎng)會(huì)
- 2024年內(nèi)蒙古包頭市中考道德與法治試卷
- 湖南省長(zhǎng)沙市2024-2025學(xué)年高二上學(xué)期期中考試地理試卷(含答案)
- 自來(lái)水質(zhì)量提升技術(shù)方案
- 金色簡(jiǎn)約蛇年年終總結(jié)匯報(bào)模板
- 農(nóng)用地土壤環(huán)境質(zhì)量類別劃分技術(shù)指南(試行)(環(huán)辦土壤2017第97號(hào))
- 反向開(kāi)票政策解讀課件
- 工程周工作計(jì)劃
- 房地產(chǎn)銷(xiāo)售任務(wù)及激勵(lì)制度
評(píng)論
0/150
提交評(píng)論