【文章內(nèi)容簡(jiǎn)介】
除索引時(shí),系統(tǒng)會(huì)從數(shù)據(jù)字典中刪去有關(guān)該索引的描述。 [例 7] 刪除 Student表的 Stusname索引。 DROP INDEX Stusname; An Introduction to Database System 查 詢 概述 單表查詢 連接查詢 嵌套查詢 集合查詢 小結(jié) An Introduction to Database System 概述 ?語句格式 SELECT [ALL|DISTINCT] 目標(biāo)列表達(dá)式 [, 目標(biāo)列表達(dá)式 ] … FROM 表名或視圖名 [, 表名或視圖名 ] … [ WHERE 條件表達(dá)式 ] [ GROUP BY 列名 1 [ HAVING 條件表達(dá)式 ] ] [ ORDER BY 列名 2 [ ASC|DESC ] ]; An Introduction to Database System 語句格式 ? SELECT子句 :指定要顯示的屬性列 ? FROM子句 :指定查詢對(duì)象 (基本表或視圖 ) ? WHERE子句 :指定查詢條件 ? GROUP BY子句 :對(duì)查詢結(jié)果按指定列的值分組 ,該屬性列值相等的元組為一個(gè)組 。 通常會(huì)在每組中作用集函數(shù) 。 ? HAVING短語 :篩選出滿足指定條件的組 ? ORDER BY子句 :對(duì)查詢結(jié)果表按指定列值的升序或降序排序 An Introduction to Database System 示例數(shù)據(jù)庫(kù) 學(xué)生 課程數(shù)據(jù)庫(kù) ? 學(xué)生表: Student(Sno, Sname, Ssex, Sage, Sdept) ? 課程表: Course(Cno, Cname, Cpno, Ccredit) ? 學(xué)生選課表: SC(Sno, Cno, Grade) An Introduction to Database System 查 詢 概述 單表查詢 連接查詢 嵌套查詢 集合查詢 小結(jié) An Introduction to Database System 單表查詢 查詢僅涉及一個(gè)表 , 是一種最簡(jiǎn)單的查詢操作 一 、 選擇表中的若干列 二 、 選擇表中的若干元組 三 、 對(duì)查詢結(jié)果排序 四 、 使用集函數(shù) 五、對(duì)查詢結(jié)果分組 An Introduction to Database System [例 1] 查詢?nèi)w學(xué)生的學(xué)號(hào)與姓名 。 SELECT Sno, Sname FROM Student; [例 2] 查詢?nèi)w學(xué)生的姓名 、 學(xué)號(hào) 、 所在系 。 SELECT Sname, Sno, Sdept FROM Student; An Introduction to Database System ?[例 3] 查詢?nèi)w學(xué)生的詳細(xì)記錄 。 SELECT Sno, Sname, Ssex, Sage, Sdept FROM Student; 或 SELECT * FROM Student; An Introduction to Database System 3. 查詢經(jīng)過計(jì)算的值 SELECT子句的 目標(biāo)列表達(dá)式 為表達(dá)式 ? 算術(shù)表達(dá)式 ? 字符串常量 ? 函數(shù) ? 列別名 ? 等 An Introduction to Database System 3. 查詢經(jīng)過計(jì)算的值(續(xù)) [例 4] 查全體學(xué)生的姓名及其出生年份 。 SELECT Sname, 2021Sage FROM Student; 輸出結(jié)果: Sname 2021Sage 李勇 1976 劉晨 1977 王名 1978 張立 1978 An Introduction to Database System 3. 查詢經(jīng)過計(jì)算的值(續(xù)) [例 5] 查詢?nèi)w學(xué)生的姓名 、 出生年份和所有系 ,要求用小寫字母表示所有系名 。 SELECT Sname, 39。Year of Birth: 39。, 2021Sage, ISLOWER(Sdept) FROM Student; An Introduction to Database System 例題(續(xù)) 輸出結(jié)果: Sname 39。Year of Birth:39。 2021Sage ISLOWER(Sdept) 李勇 Year of Birth: 1976 cs 劉晨 Year of Birth: 1977 is 王名 Year of Birth: 1978 ma 張立 Year of Birth: 1977 is An Introduction to Database System [例 ] 使用列 別名 改變查詢結(jié)果的列標(biāo)題 SELECT Sname NAME, 39。Year of Birth: ’ BIRTH, 2021Sage BIRTHDAY, ISLOWER(Sdept) DEPARTMENT FROM Student; 輸出結(jié)果: NAME BIRTH BIRTHDAY DEPARTMENT 李勇 Year of Birth: 1976 cs 劉晨 Year of Birth: 1977 is 王名 Year of Birth: 1978 ma 張立 Year of Birth: 1977 is An Introduction to Database System 二、選擇表中的若干元組 ?消除取值重復(fù)的行 ?查詢滿足條件的元組 An Introduction to Database System 1. 消除取值重復(fù)的行 ? 在 SELECT子句中使用 DISTINCT短語 假設(shè) SC表中有下列數(shù)據(jù) Sno Cno Grade 95001 1 92 95001 2 85 95001 3 88 95002 2 90 95002 3 80 An Introduction to Database System ALL 與 DISTINCT [例 6] 查詢選修了課程的學(xué)生學(xué)號(hào) 。 (1) SELECT Sno FROM SC。 或 (默認(rèn) ALL) SELECT ALL Sno FROM SC。 結(jié)果: Sno 95001 95001 95001 95002 95002 An Introduction to Database System 例題(續(xù)) (2) SELECT DISTINCT Sno FROM SC。 結(jié)果: Sno 95001 95002 An Introduction to Database System