什麼是一種表示關係代數表示式的樹型結構

2021-03-04 09:00:23 字數 5379 閱讀 7879

1樓:蘇澄浩

(29)[答案]b

[考點來]資料庫設計基礎

[評析源]

層次模型結構是一棵有向樹,樹中的每個結點代表一種記錄型別,這些結點滿足:有且僅有乙個結點無雙親(根結點),其它結點有且僅有乙個雙親結點。

網狀模型則相當於乙個有向圖,與層次模型結構不同的是:乙個結點可以有多個雙親結點,且多個結點可以無雙親結點。

關係模型則是二維表,一張表即為乙個關係,這個很常見,如學生關係(學號,姓名,出生年月,性別),就像我們的辦公中電子**那樣的**。

d項的資料模型不是資料庫的基本模型

資料庫的關係代數表示式 100

2樓:仁昌居士

資料庫的關係代數表示式是由關係代數運算經有限次復合而成的式子。

在關係代數運算中,把由並(∪)、差(-)、笛卡爾積(×)、投影(π)、選擇(σ)五個基本操作經過有限次復合的式子稱為關係代數表示式。關係代數表示式的運算結果仍然是乙個關係。可以用關係代數表示式表示對資料庫的各種資料查詢和更新操作。

關係代數表示式用到的運算子包括集合運算子、專門的關係運算子、算術比較符和邏輯運算子。和交(∩)、聯接(等值聯接)、自然聯接(rxs)、除法(÷) 四個組合操作。

3樓:哈工大威海校區

一、關係代數的9種操作:

關係代數中包括了:並、交、差、乘、選擇、投影、聯接、除、自然聯接等操作。

五個基本操作:

並(∪)、差(-)、笛卡爾積(×)、投影(σ)、選擇(π)

四個組合操作:

交(∩)、聯接(等值聯接)、自然聯接(r s)、除法(÷)

注2:等值連線表示先做笛卡爾積(×)之後,對相應列進行選擇或等值關聯後的結果(僅篩選行、不篩選列)

注2:自然連線表示兩個關係中若有相同名稱的屬性,則自動作為關聯條件,且僅列出一列

二、關係代數表示式:

由關係代數運算經有限次復合而成的式子稱為關係代數表示式。這種表示式的運算結果仍然是乙個關係。可以用關係代數表示式表示對資料庫的查詢和更新操作。

三、舉例說明:

設教學資料庫中有3個關係:

學生關係s(sno, sname,age,***)

學習關係sc(sno,**o,grade)

課程關係c(**o,**ame,teacher)

(1) 檢索學習課程號為c2的學生學號與成績

------------------------------------

select sno,grade

from sc

where **o='c2'

------------------------------------

π sno, grade (σ **o='c2' (sc))

************************************

(2) 檢索學習課程號為c2的學生學號與姓名

------------------------------------

select sc.sno,s.sname

from sc,s

where sc.sno=s.sno

and sc.**o='c2'

------------------------------------

π sno,sname (σ **o='c2' (s sc))

此查詢涉及s和sc,先進行自然連線,然後再執行選擇投影操作。

----

π sno,sname (s) (π sno (σ **o='c2' (sc)))

自然連線的右分量為"學了c2課的學生學號的集合"。

此表示式比前乙個表示式優化,執行起來要省時間、省空間。

************************************

(3) 檢索選修課程名為maths的學生學號與姓名

------------------------------------

select sc.sno,s.sname

from sc,s,c

where sc.sno=s.sno

and sc.**o=c.**o

and c.**ame='maths'

------------------------------------

π sno, sanme (σ **ame='maths' (s sc c))

************************************

(4) 檢索選修課程號為c2或c4的學生學號

------------------------------------

select sno

from sc

where **o='c2'

or **o='c4'

------------------------------------

π sno (σ **o='c2'∨**o='c4' (sc))

************************************

(5) 檢索至少選修課程號為c2或c4的學生學號

------------------------------------

select sa.sno

from sc as sa,sc as sb

where sa.sno=sb.sno

and sa.**o='c2'

and sb.**o='c4'

------------------------------------

π 1 (σ 1=4∧2='c2'∧5='c4' (sc×sc))

************************************

(6) 檢索不學c2課的學生姓名與年齡

------------------------------------

select sname,age

from s

minus

select s.sname,s.age

from sc,s

where sc.sno=s.sno

and sc.**o='c2'

(oracle)

------------------------------------

π sname, age (s)-π sname, age (σ **o='c2' (s sc))

************************************

(7) 檢索學習全部課程的學生姓名

------------------------------------

這個定義用sql表示比較麻煩,略過

------------------------------------

π sno, **o (sc)÷π **o (c)

先用除法取出選取所有課程的sno集(除法可以理解為乙個filter)

π sname (s (π sno,**o (sc)÷π **o (c)))

再關聯s表取出sname

************************************

(8) 檢索所學課程包含s3所學課程的學生學號

------------------------------------

這個定義用sql表示比較麻煩,略過

------------------------------------

π sno,**o (sc)÷ π **o (σ sno='s3' (sc))

同樣運用了除法的特性

************************************

(9) 將新課程元組( 'c10','physics','yu') 插入到關係c中

------------------------------------

insert into c values('c10','physics','yu')

------------------------------------

(c∪ ('c10','physics','yu'))

記住該符號的用法

************************************

(10) 將學號s4選修課程號為c4的成績改為85分

------------------------------------

update sc set grade=85

where sno='s4'

and **o='c4'

------------------------------------

(sc- ('s4','c4',? )∪ ('s4','c4',85))

先用'- '實現delete功能,再用'∪'實現insert功能

注意使用?來表示檢索時忽略該字段值

************************************

四、關係代數表示式的優化:

目的 :為了系統在執行時既省時間又能提高效率。

基本策略 :先做選擇,運用投影去除多餘屬性等等。

優化演算法 :語法樹( 盡量提前做選擇操作;在每個操作後,應做個投影操作,去掉不用的屬性值)

例如:π sno ,sname (σ grade>60 (s sc)) 進行 優化後轉換為:

π sno ,sname (π sno ,sname (s) π sno (σ grade>60 (sc)))

--即提前做選擇操作;在每個操作後,應做個投影操作,去掉不用的屬性值

又如:s(s#,sname,age,***)

sc(s#,c#,grade)

c(c#,**ame,teacher)

π **ame,teacher (σ ***='女' (s sc c)) 進行 優化後轉換為:

π **ame, teacher (c π c# (π s#,c# (sc) π s# (σ ***='女' (s))))

求助 這道資料庫關係代數表示式的答案

4樓:匿名使用者

(1)π姓名,學號(δ課程

名='資料庫'(課程)∞選課∞學生)

(2)π姓名,學號(δ課程名='資料庫',課程名='資料結構'(課程)∞選課∞學生)

(3)π學號(δ課程名<>'資料庫'(課程)∞選課)(4)π學號(π先行課(δ課程名='資料庫'(課程))∞選課)

5樓:匿名使用者

select

from

where```

sql語句表示關係代數表示式,急! 30

6樓:匿名使用者

public void testlogin() {

system.out.println("executing login scenario");

複數的代數表示式三角表示式指數表示式三者之間有什麼聯絡

這是典型的上課不聽講的,老師上次講了的,自己翻書看看吧 哈哈哈 懸賞分怎麼只有0分 饒 複數代數表示式和三角表達形式各有什麼優勢,分別適合那些運算 複數的代數形式與三角形式,在復平面都可以像直角座標系,表示出位置與圖形。二,對於加減乘除運算法則的運用,代數形式比較方便。三,對於乘方開方不如三角形式。...

求助這道資料庫關係代數表示式的答案

1 姓名,學號 課程 名 資料庫 課程 選課 學生 2 姓名,學號 課程名 資料庫 課程名 資料結構 課程 選課 學生 3 學號 課程名 資料庫 課程 選課 4 學號 先行課 課程名 資料庫 課程 選課 select from where 求助 這道資料庫 關係代數表示式的題目 的答案 1.檢索 吳...

邏輯函式FABBC的對偶函式表示式是F

將邏輯函式表示式f中所有的 變成 變成 0 變成內 1 1 變成 容0 並保持原函式中的運算順序不變,則所得到的新的邏輯表示式稱為函式f的對偶式,並記作f f a b a c f a b b c 邏輯函式 f ab cd 其對偶函式f 為2,3,4,1中的哪個 是自偶函式 來證明 任何邏輯函式源f ...