【文章內(nèi)容簡介】
ON ?,F(xiàn)有關(guān)系數(shù)據(jù)庫如下學(xué)生(學(xué)號(hào),姓名,性別,專業(yè),獎(jiǎng)學(xué)金)課程(課程號(hào),名稱,學(xué)分)學(xué)習(xí)(學(xué)號(hào),課程號(hào),分?jǐn)?shù))用關(guān)系代數(shù)表達(dá)式實(shí)現(xiàn)下列1—2小題:1. 檢索“英語”專業(yè)學(xué)生的學(xué)號(hào)、姓名、性別?!?0031”,課程成績高于90分的所有學(xué)生的學(xué)號(hào)。1. П學(xué)號(hào),姓名,性別(σ專業(yè)=39。英語39。(學(xué)生))2. П學(xué)號(hào) (σ分?jǐn)?shù)90∧課程號(hào)=39。1003139。(學(xué)習(xí)))用SQL語言實(shí)現(xiàn)下列3—10小題:3. 檢索姓王學(xué)生的姓名、專業(yè)。答案:SELECT姓名,專業(yè)FROM 學(xué)生 WHERE 姓名 LIKE“王%” ;4. 檢索獎(jiǎng)學(xué)金在200元以下的學(xué)生姓名和專業(yè)。答案:SELECT姓名,專業(yè)FROM 學(xué)生WHERE 獎(jiǎng)學(xué)金200;5. 檢索選修課程號(hào)為“C135”課程的學(xué)生信息,包括學(xué)號(hào),姓名和專業(yè)答案:SELECT 學(xué)號(hào),姓名,專業(yè)FROM 學(xué)生,學(xué)習(xí)WHERE 課程號(hào)=39。C13539。 and =;6. 檢索學(xué)習(xí)‘C1’號(hào)課程的學(xué)生最高分。答案:SELECT MAX(分?jǐn)?shù))FROM 學(xué)習(xí)WHERE 課程號(hào)=39。C139。 ;7. 向?qū)W生表中插入一個(gè)記錄(‘980810’,‘王東’,‘男’,‘計(jì)算機(jī)’,150)答案:.INSERT INTO 學(xué)生VALUES(‘980810’,‘王東’,‘男’,‘計(jì)算機(jī)’,150);8. 定義“英語”專業(yè)學(xué)生所學(xué)課程的信息視圖AAA,包括學(xué)號(hào)、姓名、課程號(hào)和分?jǐn)?shù)答案:CREATE VIEW AAA(學(xué)號(hào),姓名,課程號(hào),分?jǐn)?shù)) AS SELECT 學(xué)號(hào),姓名,課程號(hào),分?jǐn)?shù) FROM 學(xué)生,學(xué)習(xí) WHERE = AND 專業(yè)=’英語’ ;9. 檢索所有有成績的學(xué)生學(xué)號(hào)和課程號(hào)。答案:SELECT 學(xué)號(hào),課程號(hào)FROM 學(xué)習(xí)WHERE 成績 IS NULL;10. 檢索選修C56 課程的學(xué)生學(xué)號(hào)和成績,檢索結(jié)果按分?jǐn)?shù)的降序排列。答案:.SELECT 學(xué)號(hào),成績 FROM 學(xué)習(xí) WHERE 課程號(hào)=‘C56’ ORDER BY 成績 DESC;有如下三個(gè)關(guān)系表st(sno,sn,sa,ss): 學(xué)生表格,sno:學(xué)號(hào) sn:姓名 sa:年齡 ss:性別sc(sno,o,score): 學(xué)生選擇課程表格,sno:學(xué)號(hào) o:課程號(hào) score:成績c(o,ct): 課程表格,o:課程號(hào) :課程名 ct:課程學(xué)時(shí)1. 用關(guān)系代數(shù)寫出下面查詢的表達(dá)式(每題4分)(1)查找所有女生的學(xué)號(hào)、姓名和年齡。(2)查找選修了“數(shù)據(jù)庫技術(shù)” 的學(xué)生學(xué)號(hào)和成績。(3)查找選修了“軟件工程” 的男生姓名和年齡。2. 請(qǐng)按以下題目的要求寫出相應(yīng)的SQL語句(每題4分)(1) 定義學(xué)生關(guān)系表,要求學(xué)號(hào)屬性非空,取值唯一; create table st(sno char(10) not null unique,sn char(20) ,sa int,ss char(2))。(2) 查詢年齡大于26歲的男生學(xué)號(hào)和姓名;select sno, sn from st where sa26 and ss=’男’。(3) 查詢?nèi)w學(xué)生的姓名和出生年份;select sn, 2018sa from st。(4) 查詢年齡18到30歲之間的學(xué)生姓名和年齡;select sn, sa from st where sa between 18 and 30。(5) 查詢所有姓孫的學(xué)生學(xué)號(hào)、姓名; select sno,sn from st where sn like ‘孫%’。(6)查詢男女學(xué)生的平均年齡;select ss , avg(sa) from st group by ss。(7)查詢學(xué)習(xí)5號(hào)課程的最高分和最低分。select max(score),min(score) from sc。 綜合題:某個(gè)學(xué)校有若干個(gè)系,每個(gè)系有若干個(gè)學(xué)生,開設(shè)若干個(gè)課程,每門課程有若干學(xué)生選修,某一門課可以為不同的系開設(shè)。用ER圖畫出該學(xué)校的概念模型。描述學(xué)生的屬性有:學(xué)號(hào)、姓名、出生日期、系號(hào)、班號(hào);描述系的屬性有:系名、系號(hào)、系辦公室地點(diǎn)、人數(shù);描述學(xué)校的屬性有:學(xué)校名、成立年份、地點(diǎn);描述課程的屬性有:課程號(hào)、課程名、學(xué)分。(1) 設(shè)計(jì)學(xué)校的ER圖。(2)將該ER圖轉(zhuǎn)換為關(guān)系模式。關(guān)系模型如下。學(xué)生(學(xué)號(hào)、姓名、出生日期、系號(hào)、班號(hào))。系(系名、系號(hào)、系辦公室地點(diǎn)、人數(shù))。學(xué)校(學(xué)校名、成立年份、地點(diǎn))課程(課程號(hào)、課程名、學(xué)分)(3)指出轉(zhuǎn)換結(jié)果中每個(gè)關(guān)系模式的候選碼。學(xué)生關(guān)系的主碼:用戶名 系的主碼:系號(hào) 學(xué)校主碼:學(xué)校名 課程主碼:學(xué)校名有三個(gè)關(guān)系如下(1)學(xué)生關(guān)系Student,包括學(xué)號(hào)Sno、姓名Sname、年齡Sage、性別Ssex;(2)課程關(guān)系Course,包括課程號(hào)Cno、課程名Cname、任課教師Cteacher; (3)學(xué)生選課關(guān)系SC,包括Sno、Cno和成績Grade。,學(xué)號(hào)不能為空,其值唯一,姓名值也唯一,學(xué)號(hào)為主碼;CREATE TABLE Student (Sno CHAR(10)NOT NULL UNIQUE PRIMARY KEY, Sname CHAR(30) UNIQUE, Sage INT , Ssex CHAR(2)) ;2. 查詢1號(hào)課程的平均成績