數(shù)據(jù)操縱語言是用戶用來操作數(shù)據(jù)庫的手段,通常包括查詢語句和更新語句兩部分。
關(guān)系操作能力通常用代數(shù)方式或邏輯方式表示,分別稱為關(guān)系代數(shù)和關(guān)系演算。用關(guān)系的運(yùn)算來表達(dá)查詢的方式稱為關(guān)系代數(shù)。用謂詞來表達(dá)查詢要求的方式稱為關(guān)系演算。
關(guān)系代數(shù)的運(yùn)算分為傳統(tǒng)集合運(yùn)算和專門關(guān)系運(yùn)算兩類。傳統(tǒng)的集合運(yùn)算包括并、交、差和廣義笛卡兒積,專門關(guān)系運(yùn)算包括選擇、投影、連接和商操作。其中并、差、投影、笛卡兒積和選擇五種操作為基本操作,而其它操作如交、連接、商均可以用這五個(gè)基本操作表示。
關(guān)系代數(shù)的運(yùn)算符有四種類型:
屬性組X為學(xué)號和姓名,屬性組Z為課程名稱和成績。當(dāng)X的值 x={01120101, 李明}時(shí),x在關(guān)系中的象集Zx={(數(shù)據(jù)結(jié)構(gòu),80),(C語言,85),(數(shù)據(jù)庫系統(tǒng)概論,90)}
傳統(tǒng)集合運(yùn)算是二目運(yùn)算,包括并、交、差、笛卡兒積四種運(yùn)算。關(guān)系的集合運(yùn)算要求參加運(yùn)算的關(guān)系必須具有相同的目(即關(guān)系的屬性個(gè)數(shù)相同),且相應(yīng)屬性取自同一個(gè)域。
(1) 并(Union)
設(shè)R和S都是n目關(guān)系,而且兩者各對應(yīng)屬性的數(shù)據(jù)類型相同,則R和S的并定義為: R∪S={t|t?Rút?S}
R∪S的結(jié)果仍為n目關(guān)系,由屬于R或?qū)儆赟的元組組成。
(2) 交(Intersection)
設(shè)R和S都是n目關(guān)系,而且兩者各對應(yīng)屬性的數(shù)據(jù)類型相同,則R和S的交定義為: R∩S={t|t?Rùt?S}=R-(R-S)
R∩S的結(jié)果仍為n目關(guān)系,由既屬于R又屬于S的元組組成。
(3) 差(Difference)
設(shè)R和S都是n目關(guān)系,而且兩者各對應(yīng)屬性的數(shù)據(jù)類型相同,則R和S的差定義為: R-S={t|t?Rùt?S}
R-S的結(jié)果仍為n目關(guān)系,由屬于R而不屬于S的元組組成。
(4) 廣義笛卡兒積(Extended Cartesian Product)
設(shè)R是n目關(guān)系,S是m目關(guān)系,R和S的笛卡兒積定義為:
R′S={ tr? ts | tr?Rù ts ?S}
R′S 是一個(gè)(n+ m)目關(guān)系,前n列是關(guān)系R的屬性,后m列是關(guān)系S的屬性。
每個(gè)元組的前n個(gè)屬性是關(guān)系R的一個(gè)元組,后m個(gè)屬性是關(guān)系S的一個(gè)元組。
若關(guān)系R有p個(gè)元組,關(guān)系S有q個(gè)元組,關(guān)系R′S 有p′q 個(gè)元組,且每個(gè)元組的屬性為(n+m)個(gè)。
關(guān)系操作能力通常用代數(shù)方式或邏輯方式表示,分別稱為關(guān)系代數(shù)和關(guān)系演算。用關(guān)系的運(yùn)算來表達(dá)查詢的方式稱為關(guān)系代數(shù)。用謂詞來表達(dá)查詢要求的方式稱為關(guān)系演算。
關(guān)系代數(shù)的運(yùn)算分為傳統(tǒng)集合運(yùn)算和專門關(guān)系運(yùn)算兩類。傳統(tǒng)的集合運(yùn)算包括并、交、差和廣義笛卡兒積,專門關(guān)系運(yùn)算包括選擇、投影、連接和商操作。其中并、差、投影、笛卡兒積和選擇五種操作為基本操作,而其它操作如交、連接、商均可以用這五個(gè)基本操作表示。
關(guān)系代數(shù)的運(yùn)算符有四種類型:
屬性組X為學(xué)號和姓名,屬性組Z為課程名稱和成績。當(dāng)X的值 x={01120101, 李明}時(shí),x在關(guān)系中的象集Zx={(數(shù)據(jù)結(jié)構(gòu),80),(C語言,85),(數(shù)據(jù)庫系統(tǒng)概論,90)}
傳統(tǒng)集合運(yùn)算是二目運(yùn)算,包括并、交、差、笛卡兒積四種運(yùn)算。關(guān)系的集合運(yùn)算要求參加運(yùn)算的關(guān)系必須具有相同的目(即關(guān)系的屬性個(gè)數(shù)相同),且相應(yīng)屬性取自同一個(gè)域。
(1) 并(Union)
設(shè)R和S都是n目關(guān)系,而且兩者各對應(yīng)屬性的數(shù)據(jù)類型相同,則R和S的并定義為: R∪S={t|t?Rút?S}
R∪S的結(jié)果仍為n目關(guān)系,由屬于R或?qū)儆赟的元組組成。
(2) 交(Intersection)
設(shè)R和S都是n目關(guān)系,而且兩者各對應(yīng)屬性的數(shù)據(jù)類型相同,則R和S的交定義為: R∩S={t|t?Rùt?S}=R-(R-S)
R∩S的結(jié)果仍為n目關(guān)系,由既屬于R又屬于S的元組組成。
(3) 差(Difference)
設(shè)R和S都是n目關(guān)系,而且兩者各對應(yīng)屬性的數(shù)據(jù)類型相同,則R和S的差定義為: R-S={t|t?Rùt?S}
R-S的結(jié)果仍為n目關(guān)系,由屬于R而不屬于S的元組組成。
(4) 廣義笛卡兒積(Extended Cartesian Product)
設(shè)R是n目關(guān)系,S是m目關(guān)系,R和S的笛卡兒積定義為:
R′S={ tr? ts | tr?Rù ts ?S}
R′S 是一個(gè)(n+ m)目關(guān)系,前n列是關(guān)系R的屬性,后m列是關(guān)系S的屬性。
每個(gè)元組的前n個(gè)屬性是關(guān)系R的一個(gè)元組,后m個(gè)屬性是關(guān)系S的一個(gè)元組。
若關(guān)系R有p個(gè)元組,關(guān)系S有q個(gè)元組,關(guān)系R′S 有p′q 個(gè)元組,且每個(gè)元組的屬性為(n+m)個(gè)。

