freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)庫原理與設(shè)計(jì)方法東南大學(xué)自動控制系邵家玉課件下載:(編輯修改稿)

2024-11-22 16:49 本頁面
 

【文章內(nèi)容簡介】 SC。 CREATE CLUSTER INDEX Stusname ON Student(Sname)。 例 6 為學(xué)生 —課程數(shù)據(jù)庫中的 Student, Course,SC 3個表建立索引 。 其中 Student表按學(xué)號升序建立唯一索引 , course表按課程號升序建立唯一索引 , SC表按學(xué)號升序和課程號降序建唯一索引 。 CREATE UNIQUE INDEX Stusno ON Student(Sno)。 CREATE UNIQUE INDEX Couo ON Course(Cno)。 CREATE UNIQUE INDEX SCno ON SC(Sno ASC, Cno DESC)。 2. 刪除索引 DROP INDEX<索引名>; 例 7 刪除 Student表的 Stusname索引 。 DROP INDEX Stusname。 查詢 SELECT [ALL| DISTINCT] <目標(biāo)列表達(dá)式> [,<目標(biāo)列表達(dá)式> ]… FROM <表名或視圖名> [, <表名或視圖名> ]… [WHERE<條件表達(dá)式> ] [GROUP BY<列名 1> [HAVING<條件表達(dá)式> ]] [ORDER BY<列名 2> [ASC | DESC]]; 單表查詢 1. 選擇表中的若干列 1) 查詢指定列 例 1 查詢?nèi)w學(xué)生的學(xué)號與姓名 。 SELECT Sno, Sname FROM Student。 例 2 查詢?nèi)w學(xué)生的姓名 、 學(xué)號 、 所在系 。 SELECT Sname, Sno, Sdept FROM Student; 2) 查詢?nèi)苛? 例 3 查詢?nèi)w學(xué)生的詳細(xì)記錄 SELECT * FROM Student; 3) 查詢經(jīng)過計(jì)算的值 例 4 查詢?nèi)w學(xué)生的姓名及其出生年份 。 SELECT Sname, 2020Sage FROM Student; 例 5 查詢?nèi)w學(xué)生的姓名 、 出生年份和所在系 ,要求用小寫字母表示所在系名 SELECT Sname, ‘ Year of Birth: ’, 2020Sage, ISLOWER(Sdept) FROM Student。 SELECT Sname NAME, ‘ Year of Birth: ’ BIRTH , 2020Sagc BIRTHDAY , ISLOWER(Sdept) DEPARTMENT FROM Student; 結(jié)果為: NAME BIRTH BIRTHDAY DEPARTMENT 李勇 Year of Birth: 1976 cs 劉晨 Year of Birth: 1977 if 王名 Year of Birth: 1978 ma 張立 Year of Birth: 1978 if 2. 選擇表中的若干元組 1) 消除取值重復(fù)的行 例 6 查詢所有選修過課的學(xué)生的學(xué)號 。 SELECT Sno FROM SC; 假設(shè) SC表中有下列數(shù)據(jù): Sno Cno Grade 95001 1 92 95001 2 85 95001 3 88 95002 2 90 95002 3 80 執(zhí)行上面的 SELECT語句后 , 結(jié)果為: Sno 95001 95001 95001 95002 95002 SELECT DISTINCT Sno FROM SC; 執(zhí)行結(jié)果為: Sno 95001 95002 SELECT Sno FROM SC; 與 SELECT ALL Sno FROM SC; 完全等價 。 2) 查詢滿足條件的元組 表 35 常用的查詢條件 ① 比較大小 = 等于 > 大于 < 小于 >= 大于等于 <= 小于等于 ! =或<> 不等于 有些產(chǎn)品中還包括: ! > 不大于 ! < 不小于 邏輯運(yùn)算符 NOT可與比較運(yùn)算符同用 , 對條件求非 。 例 7 查計(jì)算機(jī)系全體學(xué)生的名單 。 SELECT Sname FROM Student WHERE Sdept= ‘ CS?; 例 8 查所有年齡在 20歲以下的學(xué)生姓名及其年齡 。 SELECT Sname, Sage FROM student WHERE Sage< 20; 或 SELECT Sname, Sage FROM student WHERE NOT Sage=20; 例 9 查考試成績有不及格的學(xué)生的學(xué)號 。 SELECT DISTINCT Sno FROM SC WHERE Grade< 60; ② 確定范圍 謂詞 BETWEEN ... AND . . . 和 NOT BETWEEN... AND... 可以用來查找屬性值在 (或不在 )指定范圍內(nèi)的元組 , 其中 BETWEEN后是范圍的下限 (即低值 ), AND后是范圍的上限(即高值 )。 例 10 查詢年齡在 20至 23歲之間的學(xué)生的姓名 、 系別和年齡 。 SELECT Sname, Sdept, Sage FROM Student WHERE Sage BETWEEN 20 AND 23; 與 BETWEEN... AND... 相對的謂詞是NOT BETWEEN... AND...。 例 11 查詢年齡不在 20至 23歲之間的學(xué)生姓名 、 系別和年齡 。 SELECT Sname, Sdept, Sage FROM Student WHERE Sage NOT BETWEEN 20 AND 23; ③ 確定集合 謂詞 IN可以用來查找屬性值屬于指定集合的元組 。 例 12 查信息系 (IS)、 數(shù)學(xué)系 (MA)和計(jì)算機(jī)科學(xué)系(CS)的學(xué)生的姓名和性別 。 SELECT Sname. Ssex FROM Student WHERE Sdept IN(?IS?, ‘ MA?, ‘ CS?); 與 IN相對的謂詞是 NOT IN, 用于查找屬性值不屬于指定集合的元組 。 例 13 查既不是信息系 、 數(shù)學(xué)系 , 也不是計(jì)算機(jī)科學(xué)系的學(xué)生的姓名和性別 。 SELECT Sname. Ssex FROM Student WHERE Sdept NOT IN(?IS?, ‘ MA?, ‘ CS?); ④ 字符匹配 謂詞 LIKE可以用來進(jìn)行字符串的匹配 。 其一般語法格式如下: [NOT] LIKE ?<匹配串> ’ 其含義是查找指定的屬性列值與<匹配串>相匹配的元組 , <匹配串>可以是一個完整的字符串 ,也可以含有通配符 % 和 _。 其中: % (百分號 ) 代表任意長度 (長度可以為 0)的字符串 。 例如 a%b表示以 a開頭 , 以 b結(jié)尾的任意長度的字符串 , acb,adefb,ab等都滿足該匹配串 。 _(下劃線 ) 代表任意單個寧符 。 例如 a_b表示以 a開頭 ,以 b結(jié)尾 , 長度為 3的字符串 , acb,adb等都滿足該匹配串 。 例 14 查詢學(xué)號為 95001的學(xué)生的詳細(xì)情況 SELECT * FROM Student WHERE Sno LIKE ?9500l?。 該語句實(shí)際上與下面的語句完全等價: SELECT * FROM Student WHERE Sno=?9500l?。 例 15 查所有姓劉的學(xué)生的姓名 、 學(xué)號和性別 。 SELECT Sname,Sno,Ssex FROM Student WHERE Sname LIKE ?劉 %?; 例 16 查姓 “歐陽 ”且全名為 3個漢字的學(xué)生的姓名 。 SELECT Sname FROM Student WHERE Sname LIKE ?歐陽 __?; 例 17 查名字中第二字為 “陽 ”字的學(xué)生的姓名和學(xué)號 。 SELECT Sname, Sno FROM Student WHERE Sname LIKE ?__陽 % ’; 例 18查所有不姓劉的學(xué)生姓名 。 SELECT Snamc, Sno, Ssex FROM Student WHERE Sname NOT LIKE ?劉 %?; ⑤ 涉及空值的查詢 謂詞 IS NULL和 IS NOT NULL可用來查詢空值和非空值 。 例 19 某些學(xué)生選修某門課程后沒有參加考試 , 所以有選課記錄 , 但沒有考試成績 , 下面來查一下缺少成績的學(xué)生的學(xué)號和相應(yīng)的課程號 。 SELECT Sno, Cno FROM SC WHERE Grade IS NULL; 例 20 查所有有成績的記錄的學(xué)生學(xué)號和課程號 。 SELECT Sno, Cno FROM SC WHERE Grade IS NOT NULL; ⑥ 多重條件查詢 例 21 查 CS系年齡在 20歲以下的學(xué)生姓名 SELECT Sname FROM Student WHERE Sdept=?CS?AND Sage20。 例 12中的 IN謂詞實(shí)際上是多個 OR運(yùn)算符的縮寫 ,因此 , 例 l2中的查詢也可以用 OR運(yùn)算符寫成如下等價形式: SELECT Sname. Ssex FROM Student WHERE Sdept=?IS?OR Sdept=?MA?OR Sdept=?CS?; 3. 對查詢結(jié)果排序 例 22 查詢選修了 3號課程的學(xué)生的學(xué)號及其成績 ,查詢結(jié)果按分?jǐn)?shù)的降序排列 。 SELECT Sno, Grade FROM SC WHERE Cno= ‘ 3? ORDER BY Grade DESC; 例 23 查詢?nèi)w學(xué)生情況 , 查詢結(jié)果按所在系升序排列 , 對同一系中的學(xué)生按年齡降序排列 。 SELECT * FROM Student ORDER BY Sdept, Sage DESC。 4. 使用集函數(shù) COUNT([DISTINCT | ALL ] *) 統(tǒng)計(jì)元組個數(shù) COUNT([DISTINCT | ALL]<列名> ) 統(tǒng)計(jì)一列中值的個數(shù) SUM([DISTINCT | ALL] <列名> ) 計(jì)算一列值的總和 (此列必須是數(shù)值型 ) AVG([DISTINCT | ALL] <列名> ) 計(jì)算一列值的平均值 (此列必須是數(shù)值型 ) MAX([DISTINCT | ALL] <列名> ) 求一列值中的最大值 MIN([DISTINCT | ALL] <列名> ) 求一列值中的最小值 例 24 查詢學(xué)生總?cè)藬?shù) 。 SELECT COUNT( *) FROM Student。 例 25 查詢選修了課程的學(xué)生人數(shù) 。 SELECT COUNT(DISTINCT Sno) FROM SC。 例 26 計(jì)算 1號課程的學(xué)生平均成績 。 SELECT AVG(Grade) FROM SC WHERE Cno= ‘l?; 例 27 查詢學(xué)習(xí) l號課程的學(xué)生最高分?jǐn)?shù) 。 SELECT MAX( Grade) FROM SC WHERE Cno= ‘ 1?; 5. 對查詢結(jié)果分組 例 28 查詢各個課程號與相應(yīng)的選課人數(shù) 。 SELECT Cno, COUNT(Sno) FROM SC GROUP BY Cno; 例 29 查詢信息系選修了 3門以上課程的學(xué)生的學(xué)號 , 為簡單起見 , 假設(shè) SC表中有一列 Dept, 它記錄了學(xué)生所在系 。 SELECT Sno FROM SC WHERE Dept= ‘ IS? GROUP BY Sno HAVING COUNT(*)> 3; 連接查詢 1. 等值與非等值連接查詢 [<表名 1> . ]<列名 1><比較運(yùn)算符> [<表名 2> . ]<列名 2> 其中比較運(yùn)算符主要有:= 、 > 、 < 、 >= 、 <= 、 ! = 。 此外 , 連接謂詞還可以使用下面形式: [<表名 1> . ]<列名 1> BETWEEN[<表名 2. ]列名 2> AND[<表名 2> . ]列名 3 當(dāng)連接運(yùn)算符為=時 , 稱為等值連接 。 使用其它運(yùn)算符稱為非等值連接 。 例 30 查詢每個學(xué)生及其選修課程的情況 。 SELECT Student.*, SC.* FROM Student, SC WHERE = 。 例 31 Student表和 SC表的笛卡爾積 。 SELECT Student.*,
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1