




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、a,1,第1章 安裝,1.1 ORACLE數(shù)據(jù)庫(kù)安裝 1.2 PL/SQL工具安裝,默認(rèn)下一步即可. 1.3 配置本機(jī)tnsname.ora文件 1.4 測(cè)試tnsname.ora配置是否正確 1.5 PL/SQL登錄,a,2,第2章 SQL基礎(chǔ),2.1 數(shù)據(jù)庫(kù)查詢語(yǔ)言SQL 2.2 基本查詢和排序 2.3 條件查詢 2.4 函數(shù) 2.5 高級(jí)查詢 2.6 階段訓(xùn)練 2.7 練習(xí),a,3,2.1 數(shù)據(jù)庫(kù)查詢語(yǔ)言SQL,2.1.1 SQL語(yǔ)言的特點(diǎn)和分類 SQL語(yǔ)言有以下的主要特點(diǎn): * SQL語(yǔ)言可以在Oracle數(shù)據(jù)庫(kù)中創(chuàng)建、存儲(chǔ)、更新、檢索和維護(hù)數(shù)據(jù),其中主要的功能是實(shí)現(xiàn)數(shù)據(jù)的查詢和數(shù)據(jù)的
2、插入、刪除、修改等操作。 * SQL語(yǔ)言在書寫上類似于英文,簡(jiǎn)潔清晰,易于理解。它由關(guān)鍵字、表名、字段名,表達(dá)式等部分構(gòu)成。,a,4,* SQL語(yǔ)言屬于非過(guò)程化的4GL(第四代語(yǔ)言)。 * SQL語(yǔ)言按功能可分為DDL語(yǔ)言、DML語(yǔ)言、DCL語(yǔ)言和數(shù)據(jù)庫(kù)事務(wù)處理語(yǔ)言四個(gè)類別。 * SQL語(yǔ)言的主要關(guān)鍵字有:ALTER、DROP、REVOKE、AUDIT、GRANT、ROLLBACK、COMMIT、INSERT、SELECT、COMMENT、LOCK、UPDATE、CREATE、NOAUDIT、VALIDATE、DELETE、RENAME等。 按照SQL語(yǔ)言的不同功用,可以進(jìn)一步對(duì)SQL語(yǔ)言進(jìn)行
3、劃分。下表給出了SQL語(yǔ)言的分類和功能簡(jiǎn)介。,a,5,表2-1 SQL語(yǔ)言的分類,a,6,2.1.2 SQL的基本語(yǔ)法 SQL語(yǔ)言的語(yǔ)法比較簡(jiǎn)單,類似于書寫英文的語(yǔ)句。其語(yǔ)句一般由主句和若干個(gè)從句組成,主句和從句都由關(guān)鍵字引導(dǎo)。主句表示該語(yǔ)句的主要功能,從句表示一些條件或限定,有些從句是可以省略的。在語(yǔ)句中會(huì)引用到列名、表名或表達(dá)式。另外還有如下一些說(shuō)明: * 關(guān)鍵字、字段名、表名等之間都要用空格或逗號(hào)等進(jìn)行必要的分隔。 * 語(yǔ)句的大小寫不敏感(查詢的內(nèi)容除外)。 * 語(yǔ)句可以寫在一行或多行。 * 語(yǔ)句中的關(guān)鍵字不能略寫和分開寫在兩行。,a,7,* 要在每條SQL語(yǔ)句的結(jié)束處添加“;”號(hào)。 *
4、 為了提高可讀性,可以使用縮進(jìn)。 * 從句一般寫在另一行的開始處。 查詢語(yǔ)句是最常見(jiàn)的SQL語(yǔ)句,它從給定的表中,把滿足條件的內(nèi)容檢索出來(lái)。以下是最基本的SELECT語(yǔ)句語(yǔ)法。 SELECT 字段名列表 FROM 表名 WHERE 條件; SELECT為查詢語(yǔ)句的關(guān)鍵字,后跟要查詢的字段名列表,字段名列表用來(lái)指定檢索特定的字段,該關(guān)鍵字不能省略。,a,8,字段名列表代表要查詢的字段。 FROM 也是查詢語(yǔ)句關(guān)鍵字,后面跟要查詢的表名,該關(guān)鍵字不能省略。 WHERE條件限定檢索特定的記錄,滿足“條件”的記錄被顯示出來(lái),不滿足條件的被過(guò)濾掉。 語(yǔ)句查詢的結(jié)果往往是表的一部分行和列。如果字段名列表使
5、用*,將檢索全部的字段。如果省略WHERE條件,將檢索全部的記錄。,a,9,【訓(xùn)練1】 查詢部門10的雇員。 輸入并執(zhí)行查詢: SELECT * FROM emp WHERE deptno=10; 結(jié)果略。 說(shuō)明:該查詢語(yǔ)句從emp表中檢索出部門10 的雇員,條件由WHERE deptno=10 子句指定。,a,10,2.2 基本查詢和排序,2.2.1 查詢的基本用法 在Oracle數(shù)據(jù)庫(kù)中,對(duì)象是屬于模式的,每個(gè)賬戶對(duì)應(yīng)一個(gè)模式,模式的名稱就是賬戶名稱。在表名前面要添加模式的名字,在表的模式名和表名之間用“.”分隔。我們以不同的賬戶登錄數(shù)據(jù)庫(kù)時(shí),就進(jìn)入了不同的模式,比如登錄到STUDENT
6、賬戶,就進(jìn)入了STUDENT模式。而在STUDENT模式要查詢屬于SCOTT模式的表,就需要寫成: SELECT * FROM SCOTT.EMP;,a,11,但如果登錄用戶訪問(wèn)屬于用戶模式本身的表,那么可以省略表名前面的模式名稱。 SELECT * FROM emp; 1指定檢索字段 下面的練習(xí),只顯示表的指定字段。 【訓(xùn)練1】 顯示DEPT表的指定字段的查詢。 輸入并執(zhí)行查詢: SELECT deptno,dname FROM dept;,a,12,顯示結(jié)果如下: DEPTNO DNAME - - 10 ACCOUNTING 20 RESEARCH 30 SALES 40 OPERATIO
7、NS 說(shuō)明:結(jié)果只包含2列deptno和dname。在語(yǔ)句中給出要顯示的列名,列名之間用“,”分隔。表頭的顯示默認(rèn)為全部大寫。對(duì)于日期和數(shù)值型數(shù)據(jù),右對(duì)齊顯示,如deptno列。對(duì)于字符型數(shù)據(jù),左對(duì)齊顯示,如dname列。,a,13,【練習(xí)1】顯示emp表的雇員名稱和工資。 2顯示行號(hào) 每個(gè)表都有一個(gè)虛列ROWNUM,它用來(lái)顯示結(jié)果中記錄的行號(hào)。我們?cè)诓樵冎幸部梢燥@示這個(gè)列。 【訓(xùn)練2】 顯示EMP表的行號(hào)。 輸入并執(zhí)行查詢: SELECT rownum,ename FROM emp;,a,14,結(jié)果如下: ROWNUM ENAME - - 1 SMITH 2 ALLEN 3 WARD 4 J
8、ONES 注意:顯示的行號(hào)是查詢結(jié)果的行號(hào),數(shù)據(jù)在數(shù)據(jù)庫(kù)中是沒(méi)有行號(hào)的。,a,15,3顯示計(jì)算列 在查詢語(yǔ)句中可以有算術(shù)表達(dá)式,它將形成一個(gè)新列,用于顯示計(jì)算的結(jié)果,通常稱為計(jì)算列。表達(dá)式中可以包含列名、算術(shù)運(yùn)算符和括號(hào)。括號(hào)用來(lái)改變運(yùn)算的優(yōu)先次序。常用的算術(shù)運(yùn)算符包括: * +:加法運(yùn)算符。 * -:減法運(yùn)算符。 * *:乘法運(yùn)算符。 * /:除法運(yùn)算符。 以下訓(xùn)練在查詢中使用了計(jì)算列。,a,16,【訓(xùn)練3】 顯示雇員工資上浮20%的結(jié)果。 輸入并執(zhí)行查詢: SELECT ename,sal,sal*(1+20/100) FROM emp; 顯示結(jié)果為: ENAME SAL SAL*(1+2
9、0/100) - - - SMITH 800 960 ALLEN 1600 1920 說(shuō)明:結(jié)果中共顯示了3列,第3列顯示工資上浮20%的結(jié)果,它不是表中存在的列,而是計(jì)算產(chǎn)生的結(jié)果,稱為計(jì)算列。,a,17,【練習(xí)2】顯示EMP表的雇員名稱以及工資和津貼的和。 4使用別名 我們可以為表的列起一個(gè)別名,它的好處是,可以改變表頭的顯示。特別是對(duì)于計(jì)算列,可以為它起一個(gè)簡(jiǎn)單的列別名以代替計(jì)算表達(dá)式在表頭的顯示。 【訓(xùn)練4】 在查詢中使用列別名。 輸入并執(zhí)行: SELECT ename AS 名稱, sal 工資 FROM emp; 顯示結(jié)果為: 名稱 工資 - - SMITH 800 ALLEN 1
10、600,a,18,說(shuō)明:表頭顯示的是列別名,轉(zhuǎn)換為漢字顯示。在列名和別名之間要用AS分隔,如ename和它的別名“名稱”之間用AS隔開。AS也可以省略,如sal和它的別名“工資”之間用空格分割。 注意:如果用空格分割,要區(qū)別好列名和別名,前面為列名,后面是別名。 別名如果含有空格或特殊字符或大小寫敏感,需要使用雙引號(hào)將它引起來(lái)。,a,19,【訓(xùn)練5】 在列別名上使用雙引號(hào)。 輸入并執(zhí)行查詢: SELECT ename AS Name, sal*12+5000 AS 年度工資(加年終獎(jiǎng)) FROM emp; 顯示結(jié)果為: Name 年度工資(加年終獎(jiǎng)) - - SMITH 14600 ALLEN
11、 24200,a,20,說(shuō)明:其中別名“Name”有大小寫的區(qū)別,別名“年度工資(加年終獎(jiǎng)) ”中出現(xiàn)括號(hào),屬于特殊符號(hào),所以都需要使用雙引號(hào)將別名引起。 【練習(xí)3】顯示DEPT表的內(nèi)容,使用別名將表頭轉(zhuǎn)換成中文顯示。 5連接運(yùn)算符 在前面,我們使用到了包含數(shù)值運(yùn)算的計(jì)算列,顯示結(jié)果也是數(shù)值型的。我們也可以使用字符型的計(jì)算列,方法是在查詢中使用連接運(yùn)算。連接運(yùn)算符是雙豎線“|”。通過(guò)連接運(yùn)算可以將兩個(gè)字符串連接在一起。,a,21,【訓(xùn)練6】 在查詢中使用連接運(yùn)算。 輸入并執(zhí)行查詢: SELECTename|job AS 雇員和職務(wù)表 FROM emp; 輸出結(jié)果為: 雇員和職務(wù)表 - SMIT
12、HCLERK ALLENSALESMAN,a,22,說(shuō)明:在本例中,雇員名稱和職務(wù)列被連接成為一個(gè)列顯示。 在查詢中可以使用字符和日期的常量,表示固定的字符串或固定日期。字符和日期的常量需要用單引號(hào)引起。下一個(gè)訓(xùn)練是作為上一個(gè)訓(xùn)練的改進(jìn)。,a,23,【訓(xùn)練7】 在查詢中使用字符串常量。 輸入并執(zhí)行查詢: SELECTename| IS |job AS 雇員和職務(wù)表 FROM emp; 輸出結(jié)果為: 雇員和職務(wù)表 - SMITH IS CLERK ALLEN IS SALESMAN 說(shuō)明:本練習(xí)中將雇員名稱、字符串常量“ IS ”和雇員職務(wù)3個(gè)部分連接在一起。,a,24,【練習(xí)4】顯示DEPT表
13、的內(nèi)容,按以下的形式: 部門ACCOUNTING所在的城市為NEW YORK 6消除重復(fù)行 如果在顯示結(jié)果中存在重復(fù)行,可以使用的關(guān)鍵字DISTINCT消除重復(fù)顯示。,a,25,【訓(xùn)練8】 使用DISTINCT消除重復(fù)行顯示。 輸入并執(zhí)行查詢: SELECT DISTINCT job FROM emp; 結(jié)果為: JOB - ANALYST CLERK MANAGER PRESIDENT SALESMAN,a,26,說(shuō)明:在本例中,如果不使用DISTINCT關(guān)鍵字,將重復(fù)顯示雇員職務(wù),DISTINCT關(guān)鍵字要緊跟在SELECT之后。請(qǐng)去掉DISTINCT關(guān)鍵字,重新執(zhí)行,并觀察顯示結(jié)果的不同。
14、 【練習(xí)5】顯示EMP表中不同的部門編號(hào)。 2.2.2 查詢結(jié)果的排序 如果要在查詢的同時(shí)排序顯示結(jié)果,可以使用如下的語(yǔ)句: SELECT 字段列表 FROM 表名 WHERE 條件 ORDER BY 字段名1 ASC|DESC,字段名2 ASC|DESC.;,a,27,ORDER BY從句后跟要排序的列。ORDER BY 從句出現(xiàn)在SELECT語(yǔ)句的最后。 排序有升序和降序之分,ASC表示升序排序,DESC表示降序排序。如果不指明排序順序,默認(rèn)的排序順序?yàn)樯?。如果要降序,必須書寫DESC關(guān)鍵字。,a,28,1升序排序 【訓(xùn)練1】 查詢雇員姓名和工資,并按工資從小到大排序。 輸入并執(zhí)行查詢:
15、 SELECT ename, sal FROM emp ORDER BY sal; 執(zhí)行結(jié)果為: ENAME SAL - - SMITH 800 JAMES 950 注意:若省略ASC和DESC,則默認(rèn)為ASC,即升序排序。,a,29,2降序排序 【訓(xùn)練2】 查詢雇員姓名和雇傭日期,并按雇傭日期排序,后雇傭的先顯示。 輸入并執(zhí)行查詢: SELECT ename,hiredate FROM emp ORDER BY hiredate DESC; 結(jié)果如下: ENAME HIREDATE - - ADAMS 23-5月 -87 SCOTT 19-4月 -87,a,30,MILLER 23-1月 -
16、82 JAMES 03-12月-81 FORD 03-12月-81 注意: DESC表示降序排序,不能省略。 3多列排序 可以按多列進(jìn)行排序,先按第一列,然后按第二列、第三列.。 【訓(xùn)練3】 查詢雇員信息,先按部門從小到大排序,再按雇傭時(shí)間的先后排序。 輸入并執(zhí)行查詢: SELECT ename,deptno,hiredate FROM emp ORDER BY deptno,hiredate;,a,31,結(jié)果如下: ENAME DEPTNO HIREDATE - - - CLARK 10 09-6月 -81 KING 10 17-11月-81 MILLER 10 23-1月 -82 SMIT
17、H 20 17-12月-80 JONES 20 02-4月 -81 FORD 20 03-12月-81 SCOTT 20 19-4月 -87 說(shuō)明:該排序是先按部門升序排序,部門相同的情況下,再按雇傭時(shí)間升序排序。,a,32,4在排序中使用別名 如果要對(duì)計(jì)算列排序,可以為計(jì)算列指定別名,然后按別名排序。 【訓(xùn)練4】 按工資和工作月份的乘積排序。 輸入并執(zhí)行查詢: SELECT empno, ename, sal*Months_between(sysdate,hiredate) AS total FROM emp ORDER BY total;,a,33,執(zhí)行結(jié)果為: EMPNO ENAME T
18、OTAL - - - 7876ADAMS 221526.006 7369 SMITH 222864.661 7900 JAMES 253680.817 7654 MARTIN 336532.484 說(shuō)明:求得雇員工作月份的函數(shù)Months_between將在后面介紹。sysdate表示當(dāng)前日期。 【練習(xí)1】將部門表中的部門名稱按字母順序顯示。,a,34,2.3 條件查詢,2.3.1 簡(jiǎn)單條件查詢 要對(duì)顯示的行進(jìn)行限定,可在FROM從句后使用WHERE從句,在WHERE從句中給出限定的條件,因?yàn)橄薅l件是一個(gè)表達(dá)式,所以稱為條件表達(dá)式。條件表達(dá)式中可以包含比較運(yùn)算,表達(dá)式的值為真的記錄將被顯示。
19、常用的比較運(yùn)算符列于表2-2中。,a,35,表2-2 比 較 運(yùn) 算 符,a,36,【訓(xùn)練1】 顯示職務(wù)為“SALESMAN”的雇員的姓名、職務(wù)和工資。 輸入并執(zhí)行查詢: SELECT ename,job,sal FROM emp WHERE job=SALESMAN; 執(zhí)行結(jié)果為: ENAME JOB SAL - - - ALLEN SALESMAN 1600 WARD SALESMAN 1250 MARTIN SALESMAN 1250 TURNER SALESMAN 1500,a,37,說(shuō)明:結(jié)果只顯示職務(wù)為“SALESMAN”的雇員。字符串和日期型數(shù)據(jù)的值是包含在單引號(hào)中的,如SALE
20、SMAN,需要用單引號(hào)引起。字符的值對(duì)大小寫敏感,在emp表中存放的職務(wù)字符串全部是大寫。 注意:在本練習(xí)中,如果SALESMAN寫成小寫或大小寫混合,將不會(huì)有查詢結(jié)果輸出。,a,38,【訓(xùn)練2】 顯示工資大于等于3000的雇員姓名、職務(wù)和工資。 輸入并執(zhí)行查詢: SELECT ename, job,sal FROM emp WHERE sal=3000; 執(zhí)行結(jié)果為: ENAME JOB SAL - - - SCOTT ANALYST 3000 KING PRESIDENT 5000 FORD ANALYST 3000,a,39,說(shuō)明:結(jié)果只顯示工資大于等于3000的雇員。 缺省中文日期格式
21、為DD-MM月-YY,如2003年1月10日應(yīng)該表示為“10-1月-03”。 【訓(xùn)練3】 顯示1982年以后雇傭的雇員姓名和雇傭時(shí)間。 輸入并執(zhí)行查詢: SELECT ename,hiredate FROM emp WHERE hiredate=1-1月-82; 執(zhí)行結(jié)果為: ENAME HIREDATE - -,a,40,SCOTT 19-4月 -87 ADAMS 23-5月 -87 MILLER 23-1月 -82 說(shuō)明:檢查hiredate字段的內(nèi)容,都在82年以后。 【練習(xí)1】顯示部門編號(hào)為10的雇員姓名和雇傭時(shí)間。,a,41,2.3.2 復(fù)合條件查詢 可以用邏輯運(yùn)算符構(gòu)成復(fù)合的條件查
22、詢,即把兩個(gè)或多個(gè)條件,用邏輯運(yùn)算符連接成一個(gè)條件。有3個(gè)邏輯運(yùn)算符,如表2-3所示。,a,42,表2-3 邏輯運(yùn)算符,a,43,運(yùn)算的優(yōu)先順序是NOT,AND,OR。如果要改變優(yōu)先順序,可以使用括號(hào)。 下面是使用邏輯與運(yùn)算的練習(xí)。 1使用邏輯與 【訓(xùn)練1】 顯示工資在10002000之間(不包括1000和2000)的雇員信息。,a,44,輸入并執(zhí)行查詢: SELECT ename, job,sal FROM emp WHERE sal1000 AND sal2000; 執(zhí)行結(jié)果為: ENAME JOB SAL - - - ALLEN SALESMAN 1600 WARD SALESMAN 1
23、250 MARTIN SALESMAN 1250 TURNER SALESMAN 1500 ADAMS CLERK 1100 MILLER CLERK 1300,a,45,說(shuō)明:兩個(gè)條件需要同時(shí)滿足,所以必須使用AND運(yùn)算。 注意:條件sal1000 AND sal1000 AND 2000。,a,46,【練習(xí)1】顯示部門10中工資大于1500的雇員。 2使用邏輯或 下面是使用邏輯或運(yùn)算的練習(xí)。 【訓(xùn)練2】 顯示職務(wù)為CLERK或MANAGER的雇員信息。 輸入并執(zhí)行查詢: SELECT * FROM emp WHERE job=CLERK OR job=MANAGER; 執(zhí)行結(jié)果從略。 說(shuō)明
24、:檢索職務(wù)為CLERK或MANAGER的雇員,需要使用OR運(yùn)算,請(qǐng)自行察看結(jié)果。 注意:條件job=CLERK OR job=MANAGER不能寫成job=CLERK OR MANAGER。,a,47,3使用邏輯非 下面是使用邏輯非運(yùn)算的練習(xí)。 【訓(xùn)練3】 顯示部門10以外的其他部門的雇員。 輸入并執(zhí)行查詢: SELECT * FROM emp WHERE NOT deptno=10; 執(zhí)行結(jié)果從略。 說(shuō)明:執(zhí)行結(jié)果包含部門編號(hào)不等于10的其他部門的雇員,請(qǐng)自行察看結(jié)果。,a,48,4使用邏輯或和邏輯與 下面是同時(shí)使用邏輯或和邏輯與的復(fù)合練習(xí)。 【訓(xùn)練4】 顯示部門10和部門20中工資小于15
25、00的雇員。 輸入并執(zhí)行查詢 SELECT * FROM emp WHERE (deptno=10 OR deptno=20) AND sal1500;,a,49,執(zhí)行結(jié)果為: EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO - - - - - - - - 7369 SMITH CLERK 7902 17-12月-80 800 20 7876 ADAMS CLERK 7788 23-5月 -87 1100 20 7934 MILLER CLERK 7782 23-1月 -82 1300 10 注意:該練習(xí)中的括號(hào)是不可省的。如果省略,意義有所不同。,a
26、,50,【練習(xí)2】請(qǐng)說(shuō)明在如上練習(xí)中如果省略括號(hào),該語(yǔ)句所代表的含義和查詢的結(jié)果。 2.3.3 條件特殊表示法 使用如表2-4所示的特殊運(yùn)算表示法,可使語(yǔ)句更為直觀,易于理解。,a,51,表2-4 特殊運(yùn)算符,a,52,表2-4 特殊運(yùn)算符,a,53,1BETWEEN的用法 對(duì)于數(shù)值型或日期型數(shù)據(jù),表示范圍時(shí)可以用以下的特殊運(yùn)算表示方法: NOT BETWEEN. AND. 【訓(xùn)練1】 顯示工資在10002000之間的雇員信息。 輸入并執(zhí)行查詢: SELECT * FROM emp WHERE sal BETWEEN 1000 AND 2000; 執(zhí)行結(jié)果從略。 注意:下限在前,上限在后,不能
27、顛倒。查詢范圍中包含上下限的值,因此在本例中,查詢工資包含1000和2000在內(nèi)。請(qǐng)自行執(zhí)行并察看結(jié)果。,a,54,2IN的用法 使用以下運(yùn)算形式,可以顯示值滿足特定集合的結(jié)果: NOT IN (.) 【訓(xùn)練2】 顯示職務(wù)為“SALESMAN,“CLERK”和“MANAGER”的雇員信息。 輸入并執(zhí)行查詢: SELECT * FROM emp WHERE job IN (SALESMAN,CLERK,MANAGER); 執(zhí)行結(jié)果從略。 注意:如果在IN前面增加NOT,將顯示職務(wù)不在集合列表中的雇員。以上用法同樣適用于數(shù)值型集合,請(qǐng)自行執(zhí)行并察看結(jié)果。,a,55,【練習(xí)1】顯示部門10和20的雇
28、員信息。 3LIKE的用法 使用LIKE操作符可完成按通配符查找字符串的查詢操作,該操作符適合于對(duì)數(shù)據(jù)進(jìn)行模糊查詢。其語(yǔ)句法為: NOT LIKE 匹配模式 匹配模式中除了可以包含固定的字符之外,還可以包含以下的通配符: %:代表0個(gè)或多個(gè)任意字符。 _ :代表一個(gè)任意字符。,a,56,【訓(xùn)練3】 顯示姓名以“S”開頭的雇員信息。 輸入并執(zhí)行查詢: SELECT * FROM emp WHERE ename LIKE S%; 執(zhí)行結(jié)果為: EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO - - - - - - - - 7369 SMITH CLERK
29、7902 17-12月-80 800 20 7788 SCOTT ANALYST7566 19-4月 -87 3000 20 說(shuō)明:SMITH和SCOTT名字均以S開頭,名字后邊的字符和長(zhǎng)度任意。,a,57,【訓(xùn)練4】顯示姓名第二個(gè)字符為“A”的雇員信息。 執(zhí)行查詢: SELECT * FROM emp WHERE ename LIKE _A%; 執(zhí)行結(jié)果從略,請(qǐng)自行執(zhí)行并察看結(jié)果。 說(shuō)明:“_”代表第一個(gè)字符任意,第二個(gè)字符必須為“A”,“%”代表第二個(gè)字符后面的字符為任意字符,個(gè)數(shù)任意。,a,58,【練習(xí)2】顯示姓名中包含字符“A”的雇員信息。 4判斷空值NULL 在表中,字段值可以是空,
30、表示該字段沒(méi)有內(nèi)容。如果不填寫,或設(shè)置為空則我們說(shuō)該字段的內(nèi)容為NULL。NULL沒(méi)有數(shù)據(jù)類型,也沒(méi)有具體的值,但是使用特定運(yùn)算可以判斷出來(lái)。這個(gè)運(yùn)算就是: IS NOT NULL,a,59,【訓(xùn)練5】 顯示經(jīng)理編號(hào)沒(méi)有填寫的雇員。 輸入并執(zhí)行查詢: SELECT ename, mgr FROM emp WHERE mgr IS NULL; 執(zhí)行結(jié)果為: ENAME MGR - - KING 注意:以下用法是錯(cuò)誤的。 SELECT ename, mgr FROM emp WHERE mgr=NULL;,a,60,2.4 函數(shù),2.4.1 數(shù)值型函數(shù) 常用的數(shù)值型函數(shù)如表2-5所示。,a,61,
31、表2-5 數(shù)值型函數(shù),a,62,【訓(xùn)練1】 使用數(shù)值型函數(shù)練習(xí)。 步驟1:使用求絕對(duì)值函數(shù)abs。 SELECT abs(?5) FROM dual; 執(zhí)行結(jié)果: ABS(?5) - 5 說(shuō)明:求?5的絕對(duì)值,結(jié)果為5。 步驟2:使用求平方根函數(shù)sqrt。 SELECT sqrt(2) FROM dual; 執(zhí)行結(jié)果: SQRT(2) - 1.41421356 說(shuō)明:2的平方根為1.41421356。,a,63,步驟3:使用ceil函數(shù)。 SELECT ceil(2.35) FROM dual; 執(zhí)行結(jié)果: CEIL(2.35) - 3 說(shuō)明:該函數(shù)求得大于等于2.35的最小整數(shù),結(jié)果為3。,
32、a,64,步驟4:使用floor函數(shù)。 SELECT floor(2.35) FROM dual; 執(zhí)行結(jié)果: FLOOR(2.35) - 2 說(shuō)明:該函數(shù)求得小于等于2.35的最大整數(shù),結(jié)果為2。,a,65,步驟5:使用四舍五入函數(shù)round。 SELECT round(45.923,2), round(45.923,0), round(45.923, ?1) FROM dual; 執(zhí)行結(jié)果: ROUND(45.923,2) ROUND(45.923,0) ROUND(45.923, ?1) - - - 45.92 46 50 說(shuō)明:該函數(shù)按照第二個(gè)參數(shù)指定的位置對(duì)第一個(gè)數(shù)進(jìn)行四舍五入。2代
33、表對(duì)小數(shù)點(diǎn)后第三位進(jìn)行四舍五入,0 代表對(duì)小數(shù)位進(jìn)行四舍五入,?1代表對(duì)個(gè)位進(jìn)行四舍五入。,a,66,步驟6:使用截?cái)嗪瘮?shù)trunc。 SELECT trunc(45.923,2), trunc(45.923),trunc(45.923, ?1) FROM dual; 執(zhí)行結(jié)果: TRUNC(45.923,2) TRUNC(45.923) TRUNC(45.923, ?1) - - - 45.92 45 40 說(shuō)明:該函數(shù)按照第二個(gè)參數(shù)指定的位置對(duì)第一個(gè)數(shù)進(jìn)行截?cái)唷?代表對(duì)小數(shù)點(diǎn)后第三位進(jìn)行截?cái)啵? 代表對(duì)小數(shù)位進(jìn)行截?cái)啵?1代表對(duì)個(gè)位進(jìn)行截?cái)唷?a,67,步驟7:使用求余數(shù)函數(shù)mod。 SE
34、LECT mod(1600, 300) FROM dual; 執(zhí)行結(jié)果: MOD(1600,300) - 100 說(shuō)明:1600除以300的商為5,余數(shù)為100。,a,68,步驟8:使用cos函數(shù)。 SELECT cos(3.14159) FROM dual; 執(zhí)行結(jié)果: COS(3.14159) - ?1 說(shuō)明:cos函數(shù)的輸入?yún)?shù)應(yīng)為弧度,3.14159的cos值為?1。 函數(shù)可以嵌套使用,看如下例子。,a,69,【訓(xùn)練2】 求|sin(230o)|的值,保留一位小數(shù)。 步驟1:執(zhí)行查詢。 SELECT sin(230*3.14159/180) FROM dual; 結(jié)果為: SIN(23
35、0*3.14159/180) - ?.76604226 說(shuō)明:先將230o轉(zhuǎn)換成為弧度,然后進(jìn)行計(jì)算求值。,a,70,步驟2:求絕對(duì)值。 SELECT abs(sin(230*3.14159/180) FROM dual; 結(jié)果為: ABS(SIN(230*3.14159/180) - .766042264 說(shuō)明:本步驟求絕對(duì)值。,a,71,步驟3:保留一位小數(shù)。 SELECT round(abs(sin(230*3.14159/180),1) FROM dual; 結(jié)果為: ROUND(ABS(SIN(230*3.14159/180),1) - .8 說(shuō)明:本步驟進(jìn)行四舍五入,保留小數(shù)點(diǎn)后1
36、位。 【練習(xí)1】求23/2,四舍五入,保留一位小數(shù)。,a,72,2.4.2 字符型函數(shù) 字符型函數(shù)包括大小寫轉(zhuǎn)換和字符串操作函數(shù)。大小寫轉(zhuǎn)換函數(shù)有3個(gè)。常用的字符型函數(shù)如表2-6所示。,a,73,表2-6 字符函數(shù),a,74,【訓(xùn)練1】 如果不知道表的字段內(nèi)容是大寫還是小寫,可以轉(zhuǎn)換后比較。 輸入并執(zhí)行查詢: SELECT empno, ename, deptnoFROM emp WHERE lower(ename) =blake; 結(jié)果為: EMPNO ENAME DEPTNO - - - 7698 BLAKE 30 說(shuō)明:該查詢將表中的雇員名轉(zhuǎn)換成小寫,與小寫的blake進(jìn)行比較。,a,7
37、5,【訓(xùn)練2】 顯示雇員名稱和職務(wù)列表。 輸入并執(zhí)行查詢: SELECT concat(rpad(ename,15,.),job) as 職務(wù)列表 FROM emp; 結(jié)果為: 職務(wù)列表 - SMITH.CLERK ALLEN.SALESMAN WARD.SALESMAN 說(shuō)明:rpad函數(shù)向字符串的右側(cè)添加字符,以達(dá)到指定寬度。該例中雇員名稱右側(cè)連接若干個(gè)“.”,湊足15位,然后與雇員職務(wù)連接成列表。本例中使用了函數(shù)的嵌套。,a,76,【訓(xùn)練3】 顯示名稱以“W”開頭的雇員,并將名稱轉(zhuǎn)換成以大寫開頭。 輸入并執(zhí)行查詢: SELECT empno,initcap(ename),job FROM
38、 emp WHERE substr(ename,1,1)=W; 結(jié)果為: EMPNO INITCAP(EN JOB - - - 7521 Ward SALESMAN,a,77,說(shuō)明:本例在字段列表和查詢條件中分別應(yīng)用了函數(shù)initcap和substr。函數(shù)initcap將雇員名稱轉(zhuǎn)換成以大寫開頭。函數(shù)substr返回ename從第一個(gè)字符位置開始,長(zhǎng)度為1的字符串,即第一個(gè)字符,然后同大寫W比較。,a,78,【訓(xùn)練4】 顯示雇員名稱中包含“S”的雇員名稱及名稱長(zhǎng)度。 輸入并執(zhí)行查詢: SELECT empno,ename,length(ename) FROM emp WHERE instr(e
39、name, S, 1, 1)0; 執(zhí)行結(jié)果為: EMPNO ENAME LENGTH(ENAME) - - - 7369 SMITH 5 7566 JONES 5,a,79,【訓(xùn)練4】 顯示雇員名稱中包含“S”的雇員名稱及名稱長(zhǎng)度。 輸入并執(zhí)行查詢: SELECT empno,ename,length(ename) FROM emp WHERE instr(ename, S, 1, 1)0; 執(zhí)行結(jié)果為: EMPNO ENAME LENGTH(ENAME) - - - 7369 SMITH 5 7566 JONES 5,a,80,說(shuō)明:本例在字段列表和查詢條件中分別應(yīng)用了函數(shù)length和in
40、str。Length函數(shù)返回ename的長(zhǎng)度。instr(ename,S1,1)函數(shù)返回ename中從第一個(gè)字符位置開始,字符串“S”第一次出現(xiàn)的位置。如果函數(shù)返回0,則說(shuō)明ename中不包含字符串“S”;如果函數(shù)返回值大于0,則說(shuō)明ename中包含字符串“S”。,a,81,【練習(xí)1】顯示部門表中部門和所在城市列表,中間以下劃線“_”連接,城市名轉(zhuǎn)換成以大寫字母開頭。 2.4.3 日期型函數(shù) Oracle使用內(nèi)部數(shù)字格式來(lái)保存時(shí)間和日期,包括世紀(jì)、年、月、日、小時(shí)、分、秒。缺省日期格式為 DD-MON-YY,如“08-05月-03”代表2003年5月8日。 SYSDATE是返回系統(tǒng)日期和時(shí)間的
41、虛列函數(shù)。 使用日期的加減運(yùn)算,可以實(shí)現(xiàn)如下功能: * 對(duì)日期的值加減一個(gè)天數(shù),得到新的日期。,a,82,* 對(duì)兩個(gè)日期相減,得到相隔天數(shù)。 * 通過(guò)加小時(shí)來(lái)增加天數(shù),24小時(shí)為一天,如12小時(shí)可以寫成12/24(或0.5)。 還有如表2-7所示的日期函數(shù)可以使用。,a,83,表2-7 日期函數(shù),a,84,【訓(xùn)練1】 返回系統(tǒng)的當(dāng)前日期。 輸入并執(zhí)行查詢: SELECT sysdate FROM dual; 返回結(jié)果為: SYSDATE - 06-2月-03 說(shuō)明:該查詢返回執(zhí)行該查詢時(shí)的數(shù)據(jù)庫(kù)服務(wù)器的系統(tǒng)當(dāng)前時(shí)間,日期顯示格式為默認(rèn)格式,如“06-2月-03”表示03年2月6日。,a,85,
42、【訓(xùn)練2】 返回2003年2月的最后一天。 輸入并執(zhí)行查詢: SELECT last_day(08-2月-03) FROM dual; 返回結(jié)果為: LAST_DAY( - 28-2月-03 說(shuō)明:該函數(shù)給定參數(shù)為某月份的任意一天,返回時(shí)間為該月份的最后一天。本例中,參數(shù)為03年2月8號(hào),返回日期為03年2月28日,是該月的最后一天。,a,86,【訓(xùn)練3】 假定當(dāng)前的系統(tǒng)日期是2003年2月6日,求再過(guò)1000天的日期。 輸入并執(zhí)行查詢: SELECT sysdate+1000 AS NEW DATE FROM dual; 返回結(jié)果為: NEW DATE - 04-11月-05 說(shuō)明:該查詢使
43、用到了日期的加法運(yùn)算,求經(jīng)過(guò)一定天數(shù)后的新日期。,a,87,【訓(xùn)練4】 假定當(dāng)前的系統(tǒng)日期是2003年2月6日,顯示部門10雇員的雇傭天數(shù)。 輸入并執(zhí)行查詢: SELECT ename, round(sysdate-hiredate) DAYS FROM emp WHERE deptno = 10; 返回結(jié)果為: ENAME DAYS - - CLARK 7913 KING 7752 MILLER 7685 說(shuō)明:該查詢使用日期的減法運(yùn)算求兩個(gè)日期的相差天數(shù)。用round函數(shù)對(duì)天數(shù)進(jìn)行四舍五入。,a,88,【練習(xí)1】顯示雇員名稱和雇傭的星期數(shù)。 【練習(xí)2】顯示從本年1月1日開始到現(xiàn)在經(jīng)過(guò)的天數(shù)
44、(當(dāng)前時(shí)間取SYSDATE的值)。 2.4.4 轉(zhuǎn)換函數(shù) Oracle的類型轉(zhuǎn)換分為自動(dòng)類型轉(zhuǎn)換和強(qiáng)制類型轉(zhuǎn)換。常用的類型轉(zhuǎn)換函數(shù)有TO_CHAR、TO_DATE或TO_NUMBER,如表2-8所示。,a,89,表2-8 類型轉(zhuǎn)換函數(shù),a,90,1自動(dòng)類型轉(zhuǎn)換 Oracle可以自動(dòng)根據(jù)具體情況進(jìn)行如下的轉(zhuǎn)換: * 字符串到數(shù)值。 * 字符串到日期。 * 數(shù)值到字符串。 * 日期到字符串。 以下是自動(dòng)轉(zhuǎn)換的訓(xùn)練。,a,91,【訓(xùn)練1】 自動(dòng)轉(zhuǎn)換字符型數(shù)據(jù)到數(shù)值型。 輸入并執(zhí)行查詢: SELECT 12.5+11 FROM dual; 執(zhí)行結(jié)果為: 12.5+11 - 23.5 說(shuō)明:在本訓(xùn)練中,
45、因?yàn)槌霈F(xiàn)+運(yùn)算符,說(shuō)明進(jìn)行的是算術(shù)運(yùn)算,所以字符串12.5被自動(dòng)轉(zhuǎn)換成數(shù)值12.5,然后參加運(yùn)算。,a,92,【訓(xùn)練2】 自動(dòng)轉(zhuǎn)換數(shù)值型數(shù)據(jù)到字符型。 執(zhí)行以下查詢: SELECT 12.5|11 FROM dual; 結(jié)果為: 12.5 - 12.511 說(shuō)明:在本訓(xùn)練中,因?yàn)槌霈F(xiàn)|運(yùn)算符,說(shuō)明進(jìn)行的是字符串連接運(yùn)算,數(shù)值11被自動(dòng)轉(zhuǎn)換成字符串11,然后參加運(yùn)算。,a,93,2日期類型轉(zhuǎn)換 將日期型轉(zhuǎn)換成字符串時(shí),可以按新的格式顯示。 如格式Y(jié)YYY-MM-DD HH24:MI:SS表示“年-月-日 小時(shí):分鐘:秒”。Oracle的日期類型是包含時(shí)間在內(nèi)的。 主要的日期格式字符的含義如表2-
46、9所示。,a,94,表2-9 日期轉(zhuǎn)換格式字符,a,95,表2-9 日期轉(zhuǎn)換格式字符,a,96,【訓(xùn)練3】 將日期轉(zhuǎn)換成帶時(shí)間和星期的字符串并顯示。 執(zhí)行以下查詢: SELECT TO_CHAR(sysdate,YYYY-MM-DD HH24:MI:SS AM DY) FROM dual; 結(jié)果為: TO_CHAR(SYSDATE,YYYY-MM-DD HH24 - 2004-02-07 15:44:48 下午 星期六,a,97,說(shuō)明:該語(yǔ)句中的第一個(gè)參數(shù)表示要轉(zhuǎn)換的日期,第二個(gè)參數(shù)是格式字符串,表示轉(zhuǎn)換后的格式,結(jié)果類型為字符串。“YYYY”為4位的年份,“MM”為兩位的月份,“DD”為兩位
47、的日期,“HH24”表示顯示24小時(shí)制的小時(shí),“MI”表示顯示分鐘,“SS”表示顯示秒,“AM”表示顯示上午或下午(本例中為下午),“DY”表示顯示星期?!?”、“:”和空格原樣顯示,用于分割日期和時(shí)間。轉(zhuǎn)換出來(lái)的系統(tǒng)時(shí)間為:2004年2月7日(星期六)下午15點(diǎn)44分48秒。 還可以按其他的格式顯示。以下查詢中插入中文的年月日,其中原樣顯示部分區(qū)別于外層的單引號(hào),需要用雙引號(hào)引起。,a,98,【訓(xùn)練4】 將日期顯示轉(zhuǎn)換成中文的年月日。 輸入并執(zhí)行查詢: SELECT TO_CHAR(sysdate,YYYY年MM月DD日) FROM dual; 執(zhí)行結(jié)果為: TO_CHAR(SYSDAT -
48、 2003年11月18日 說(shuō)明:雙引號(hào)中的中文字“年”、“月”、“日”原樣顯示,單引號(hào)為字符串的界定標(biāo)記,區(qū)別于雙引號(hào),不能混淆。,a,99,【訓(xùn)練5】 將雇傭日期轉(zhuǎn)換成字符串并按新格式顯示。 輸入并執(zhí)行查詢: SELECTename, to_char(hiredate, DD Month YYYY) HIREDATE FROM emp; 執(zhí)行結(jié)果為: ENAME HIREDATE - - SMITH 17 12月 1980 ALLEN 20 2月 1981,a,100,說(shuō)明:Month表示月份的特殊格式,如“12月”。年度用4位顯示。 對(duì)于數(shù)字型的日期格式,可以用數(shù)字或全拼格式顯示,即在格式
49、字符后面添加TH或SP。TH代表序列,SP代表全拼。,a,101,【訓(xùn)練6】 以全拼和序列顯示時(shí)間。 執(zhí)行以下查詢: SELECT SYSDATE,to_char(SYSDATE,yyyysp),to_char(SYSDATE,mmspth), to_char(SYSDATE,ddth) FROM dual; 執(zhí)行結(jié)果為: SYSDATE TO_CHAR(SYSDATE,YYYYSP) TO_CHAR( TO_C - - - -,a,102,07-2月 -04 two thousand four second 07th 說(shuō)明:“two thousand four”為全拼表示的2004年;“se
50、cond”為全拼序列表示的2月;“07th”為用序列表示的7號(hào)。 在格式字符中,前兩個(gè)字符代表顯示結(jié)果的大小寫。如果格式中的前兩個(gè)字符是大寫,則輸出結(jié)果的全拼也為大寫。如果格式中的前兩個(gè)字符是小寫,則輸出結(jié)果的全拼也為小寫。如果格式中的前兩個(gè)字符的第一個(gè)字符是大寫,第二個(gè)字符是小寫,則輸出結(jié)果的全拼也為大寫開頭,后面為字符小寫。,a,103,【訓(xùn)練7】 時(shí)間顯示的大小寫。 步驟1:執(zhí)行以下查詢: SELECT SYSDATE,to_char(SYSDATE,yyyysp) FROM dual; 結(jié)果為: SYSDATE TO_CHAR(SYSDATE,YYYYSP) - - 07-2月 -04
51、 two thousand four 步驟2:執(zhí)行以下查詢: SELECT to_char(SYSDATE,Yyyysp) FROM dual; 結(jié)果為: SYSDATE TO_CHAR(SYSDATE,YYYYSP) - - Two Thousand Four,a,104,步驟3:執(zhí)行以下查詢: SELECT SYSDATE,to_char(SYSDATE,YYyysp) FROM dual; 結(jié)果為: SYSDATE TO_CHAR(SYSDATE,YYYYSP) - - TWO THOUSAND FOUR 說(shuō)明:步驟1輸出全拼小寫的年度,步驟2輸出全拼的以大寫開頭的年度,步驟3輸出全拼大
52、寫的年度。 【練習(xí)1】顯示2008年的8月8日為星期幾。,a,105,3數(shù)字類型轉(zhuǎn)換 將數(shù)字型轉(zhuǎn)換成字符串時(shí),也可以按新的格式顯示。格式字符含義如表2-10所示。,a,106,表2-10 數(shù)值轉(zhuǎn)換符,a,107,【訓(xùn)練8】 將數(shù)值轉(zhuǎn)換成字符串并按新格式顯示。 執(zhí)行以下查詢: SELECT TO_CHAR(123.45,0000.00), TO_CHAR(12345,L9.9EEEE) FROM dual; 結(jié)果為: TO_CHAR( TO_CHAR(12345,L9.9 - - 0123.45 RMB1.2E+04 說(shuō)明:格式字符串中“0”表示一位數(shù)字,轉(zhuǎn)換結(jié)果中相應(yīng)的位置上沒(méi)有數(shù)字則添加0。
53、“.”表示在相應(yīng)的位置上顯示小數(shù)點(diǎn)。“L”將以本地貨幣符號(hào)顯示于數(shù)字前,在本例中本地貨幣符號(hào)為“RMB”?!癊EEE”將顯示轉(zhuǎn)換為科學(xué)計(jì)數(shù)法。,a,108,【訓(xùn)練9】 將數(shù)值轉(zhuǎn)換成字符串并按新格式顯示。 執(zhí)行以下查詢: SELECT TO_CHAR(sal,$99,999) SALARY FROM emp WHERE ename = SCOTT; 結(jié)果為: SALARY - $4,000 說(shuō)明:格式字符串中“$”表示轉(zhuǎn)換結(jié)果前面添加$。“9”表示一位數(shù)字,“99,999”表示結(jié)果可以顯示為5位的數(shù)字?!?”表示在相應(yīng)的位置上添加逗號(hào)。如果實(shí)際數(shù)值位數(shù)不足5位,則只顯示實(shí)際位數(shù),如4000實(shí)際位數(shù)為4
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專題5.3 平面向量的數(shù)量積(解析版)-2024年高考數(shù)學(xué)一輪復(fù)習(xí)精講精練寶典(新高考專用)
- 2020-2021深圳寶安區(qū)精-華學(xué)校小學(xué)三年級(jí)數(shù)學(xué)上期末模擬試題(附答案)
- 2025從電商及產(chǎn)業(yè)互聯(lián)網(wǎng)看出海新機(jī)遇
- 大便槽施工方案
- 車工知識(shí)和技能培訓(xùn)課件
- 反擔(dān)保借款合同范例
- 提升員工滿意度的重要措施計(jì)劃
- 提升劇院及演出場(chǎng)所安保能力的建議計(jì)劃
- 倉(cāng)庫(kù)作業(yè)管理的系統(tǒng)化思維計(jì)劃
- 倉(cāng)儲(chǔ)物流行業(yè)保安工作總結(jié)計(jì)劃
- 2024年全國(guó)英語(yǔ)競(jìng)賽《B類英語(yǔ)專業(yè)》初賽試題真題及答案
- 小學(xué)生中國(guó)舞課件大全
- 2025年南京信息職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)完整
- 《Spring框架》教學(xué)課件
- 2025年中考英語(yǔ)時(shí)文閱讀 6篇有關(guān)電影哪吒2和 DeepSeek的英語(yǔ)閱讀(含答案)
- 大連理工大學(xué)機(jī)械制圖習(xí)題集答案
- 化工工藝1概論
- 24種積極心理品質(zhì)精編版
- 學(xué)生特異體質(zhì)調(diào)查表
- BACnet網(wǎng)絡(luò)講義
- 20世紀(jì)30年代經(jīng)濟(jì)危機(jī)對(duì)美國(guó)高等教育的影響
評(píng)論
0/150
提交評(píng)論