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

正文內(nèi)容

oracle經(jīng)典教程-資料下載頁

2025-06-29 08:37本頁面
  

【正文】 IN SALESMAN 1250 MILLER CLERK 1300 TURNER SALESMAN 1500 7 rows selected代碼解析:① any:比子查詢結(jié)果中任意的值都小,也就是說,比子查詢結(jié)果中最大值還小,那么同理any表示比子查詢結(jié)果中最小的還大。案例3:查詢出比所有銷售員的工資都高的員工姓名,工作,工資。案例分析ANY可以表示任意的,但本案例中要求比所有銷售員工資都高,那么就要使用另外一個(gè)關(guān)鍵字ALL。ALL與關(guān)系操作符一起使用,表示與子查詢中所有元素比較。代碼演示:ALL子查詢SQL SELECT ENAME,JOB,SAL FROM EMP 2 WHERE SALALL (SELECT SAL FROM EMP WHERE JOB=39。SALESMAN39。) ① 3 / ENAME JOB SAL JONES MANAGER 2975 BLAKE MANAGER 2850 CLARK MANAGER 2450 SCOTT ANALYST 3000 KING PRESIDENT 5000 FORD ANALYST 30006 rows selected代碼解析:① ALL:比子查詢結(jié)果中所有值還要大,也就是說,比子查詢結(jié)果中最大值還要大。ALL表示比最小值還要小。對(duì)于子查詢還可以使用IN和NOT IN操作符進(jìn)行操作。2. Oracle中的偽列在Oracle的表的使用過程中,實(shí)際表中還有一些附加的列,稱為偽列。偽列就像表中的列一樣,但是在表中并不存儲(chǔ)。偽列只能查詢,不能進(jìn)行增刪改操作。接下來學(xué)習(xí)兩個(gè)偽列:ROWID和ROWNUM。178。 ROWID表中的每一行在數(shù)據(jù)文件中都有一個(gè)物理地址,ROWID偽列返回的就是該行的物理地址。使用ROWID可以快速的定位表中的某一行。ROWID值可以唯一的標(biāo)識(shí)表中的一行。由于ROWID返回的是該行的物理地址,因此使用ROWID可以顯示行是如何存儲(chǔ)的。代碼演示:ROWIDSQL SELECT ROWID,ENAME FROM EMP WHERE SAL2000。 ROWID ENAME AAAMgzAAEAAAAAgAAD JONES AAAMgzAAEAAAAAgAAF BLAKE AAAMgzAAEAAAAAgAAG CLARK AAAMgzAAEAAAAAgAAH SCOTT AAAMgzAAEAAAAAgAAI KING AAAMgzAAEAAAAAgAAM FORD 6 rows selected178。 ROWNUM在查詢的結(jié)果集中,ROWNUM為結(jié)果集中每一行標(biāo)識(shí)一個(gè)行號(hào),第一行返回1,第二行返回2,以此類推。通過ROWNUM偽列可以限制查詢結(jié)果集中返回的行數(shù)。ROWNUM與ROWID不同,ROWID是插入記錄時(shí)生成,ROWNUM是查詢數(shù)據(jù)時(shí)生成。ROWID標(biāo)識(shí)的是行的物理地址。ROWNUM標(biāo)識(shí)的是查詢結(jié)果中的行的次序。案例4:查詢出員工表中前5名員工的姓名,工作,工資。代碼演示:ROWNUMSQL SELECT ROWNUM,ENAME,JOB,SAL FROM EMP WHERE ROWNUM=5。 ROWNUM ENAME JOB SAL 1 SMITH CLERK 800 2 ALLEN SALESMAN 1600 3 WARD SALESMAN 1250 4 JONES MANAGER 2975 5 MARTIN SALESMAN 1250案例5:查詢出工資最高的前5名員工的姓名、工資和工資。案例分析“工資最高的前5名”需要先降序排序,再取前5名,但是生成ROWNUM操作比排序要早,排序時(shí)已經(jīng)連同ROWNUM一起排序了,因此不能直接在案例1的語句中直接加上Order by就行,而是需要對(duì)排序的結(jié)果重新做二次查詢,產(chǎn)生新的ROWNUM才能作為查詢的條件依據(jù)。代碼演示:ROWNUM應(yīng)用SQL SELECT ROWNUM,T.* FROM ① 2 (SELECT ENAME,JOB,SAL 3 FROM EMP ORDER BY SAL DESC) T ② 4 WHERE ROWNUM=5 5 / ROWNUM ENAME JOB SAL 1 KING PRESIDENT 5000 2 SCOTT ANALYST 3000 3 FORD ANALYST 3000 4 JONES MANAGER 2975 5 BLAKE MANAGER 2850代碼解析:① T是子查詢②的別名,這里的ROWNUM是第二次查詢后的ROWNUM。案例6:查詢出表EMP中第5條到第10條之間的記錄。案例分析這是分頁的應(yīng)用。在查詢條件中,如果查詢條件中ROWNUM大于某一正整數(shù),則不返還任何結(jié)果。代碼演示:ROWNUM分頁SQL SELECT * FROM 2 (SELECT ROWNUM R,ENAME,JOB,SAL ① 3 FROM EMP WHERE ROWNUM=10) ② 4 WHERE R5 ③ 5 / R ENAME JOB SAL 6 BLAKE MANAGER 2850 7 CLARK MANAGER 2450 8 SCOTT ANALYST 3000 9 KING PRESIDENT 5000 10 TURNER SALESMAN 1500 代碼解析:① 內(nèi)部查詢中得到ROWNUM 并且用別名R記錄,供外層條件③使用。② 內(nèi)部查詢的ROWNUM,與外出的ROWNUM列是平等的兩列。③ 使用的R是內(nèi)層產(chǎn)生的ROWNUM,在外層看來,內(nèi)層查詢的ROWNUM是正常的一列。3. Oracle函數(shù)Oracle SQL提供了用于執(zhí)行特定操作的專用函數(shù)。這些函數(shù)大大增強(qiáng)了SQL語言的功能。函數(shù)可以接受零個(gè)或者多個(gè)輸入?yún)?shù),并返回一個(gè)輸出結(jié)果。Oracle數(shù)據(jù)庫中主要使用兩種類型的函數(shù):1. 單行函數(shù):對(duì)每一個(gè)函數(shù)應(yīng)用在表的記錄中時(shí),只能輸入一行結(jié)果,返回一個(gè)結(jié)果,比如:MOD(x,y)返回x除以y的余數(shù)(x和y可以是兩個(gè)整數(shù),也可以是表中的整數(shù)列)。常用的單行函數(shù)有:216。 字符函數(shù):對(duì)字符串操作。216。 數(shù)字函數(shù):對(duì)數(shù)字進(jìn)行計(jì)算,返回一個(gè)數(shù)字。216。 轉(zhuǎn)換函數(shù):可以將一種數(shù)據(jù)類型轉(zhuǎn)換為另外一種數(shù)據(jù)類型。216。 日期函數(shù):對(duì)日期和時(shí)間進(jìn)行處理。2. 聚合函數(shù):聚合函數(shù)同時(shí)可以對(duì)多行數(shù)據(jù)進(jìn)行操作,并返回一個(gè)結(jié)果。比如SUM(x)返回結(jié)果集中x列的總合。 178。 字符函數(shù)字符函數(shù)接受字符參數(shù),這些參數(shù)可以是表中的列,也可以是一個(gè)字符串表達(dá)式。下表列出了常用的字符函數(shù)。函數(shù)說明ASCII(x)返回字符x的ASCII碼。CONCAT(x,y)連接字符串x和y。INSTR(x, str [,start] [,n)在x中查找str,可以指定從start開始,也可以指定從第n次開始。LENGTH(x)返回x的長度。LOWER(x)x轉(zhuǎn)換為小寫。UPPER(x)x轉(zhuǎn)換為大寫。LTRIM(x[,trim_str])把x的左邊截去trim_str字符串,缺省截去空格。RTRIM(x[,trim_str])把x的右邊截去trim_str字符串,缺省截去空格。TRIM([trim_str FROM] x)把x的兩邊截去trim_str字符串,缺省截去空格。REPLACE(x,old,new)在x中查找old,并替換為new。SUBSTR(x,start[,length])返回x的字串,從staart處開始,截取length個(gè)字符,缺省length,默認(rèn)到結(jié)尾。表1 字符函數(shù)示例示例結(jié)果SELECT ASCII(39。a39。) FROM DUAL97SELECT CONCAT(39。Hello39。, 39。 world39。) FROM DUALHello worldSELECT INSTR(39。Hello world39。,39。or39。) FROM DUAL8SELECT LENGTH(39。Hello39。) FROM DUAL5SELECT LOWER(39。hElLO39。) FROM DUAL。helloSELECT UPPER(39。hello39。) FROM DUALHELLOSELECT LTRIM(39。===HELLO===39。, 39。=39。) FROM DUALHELLO===SELECT 39。==39。||LTRIM(39。 HELLO===39。) FROM DUAL==HELLO===SELECT RTRIM(39。===HELLO===39。, 39。=39。) FROM DUAL===HELLOSELECT 39。=39。||TRIM(39。 HELLO 39。)||39。=39。 FROM DUAL=HELLO=SELECT TRIM(39。=39。 FROM 39。===HELLO===39。) FROM DUALHELLOSELECT REPLACE(39。ABCDE39。,39。CD39。,39。AAA39。) FROM DUALABAAAESELECT SUBSTR(39。ABCDE39。,2) FROM DUALBCDESELECT SUBSTR(39。ABCDE39。,2,3) FROM DUALBCD表2 字符函數(shù)示例178。 數(shù)字函數(shù)數(shù)字函數(shù)接受數(shù)字參數(shù),參數(shù)可以來自表中的一列,也可以是一個(gè)數(shù)字表達(dá)式。函數(shù)說明示例ABS(x)x絕對(duì)值A(chǔ)BS(3)=3ACOS(x)x的反余弦ACOS(1)=0COS(x)余弦COS(1)=CEIL(x)大于或等于x的最小值CEIL()=6FLOOR(x)小于或等于x的最大值FLOOR()=5LOG(x,y)x為底y的對(duì)數(shù)LOG(2,4)=2MOD(x,y)x除以y的余數(shù)MOD(8,3)=2POWER(x,y)x的y次冪POWER(2,3)=8ROUND(x[,y])x在第y位四舍五入ROUND(,2)=SQRT(x)x的平方根SQRT(4)=2TRUNC(x[,y])x在第y位截?cái)郥RUNC(,2)=表3 數(shù)字函數(shù)說明:1. ROUND(X[,Y]),四舍五入。在缺省y時(shí),默認(rèn)y=0;比如:ROUND()=4。y是正整數(shù),就是四舍五入到小數(shù)點(diǎn)后y位。ROUND(,2)=。y是負(fù)整數(shù),四舍五入到小數(shù)點(diǎn)左邊|y|位。ROUND(,2)=400。2. TRUNC(x[,y]),直接截取,不四舍五入。在缺省y時(shí),默認(rèn)y=0;比如:TRUNC ()=3。y是正整數(shù),就是四舍五入到小數(shù)點(diǎn)后y位。TRUNC (,2)=。y是負(fù)整數(shù),四舍五入到小數(shù)點(diǎn)左邊|y|位。TRUNC (,2)=300。178。 日期函數(shù)日期函數(shù)對(duì)日期進(jìn)行運(yùn)算。常用的日期函數(shù)有:1. ADD_MONTHS(d,n),在某一個(gè)日期d上,加上指定的月數(shù)n,返回計(jì)算后的新日期。d表示日期,n表示要加的月數(shù)。圖1 ADD_MONTHS函數(shù)示例2. LAST_DAY(d),返回指定日期當(dāng)月的最后一天。圖2 LAST_DAY函數(shù)示例3. ROUND(d[,fmt]),返回一個(gè)以fmt為格式的四舍五入日期值,d是日期,fmt是格式模型。默認(rèn)fmt為DDD,即月中的某一天。216。 如果fmt為“YEAR”則舍入到某年的1月1日,即前半年舍去,后半年作為下一年。216。 如果fmt為“MONTH”則舍入到某月的1日,即前月舍去,后半月作為下一月。216。 默認(rèn)為“DDD”,即月中的某一天,最靠近的天,前半天舍去,后半天作為第二天。216。 如果fmt為“DAY”則舍入到最近的周的周日,即上半周舍去,下半周作為下一周周日。圖3 ROUND函數(shù)示例 與ROUND對(duì)應(yīng)的函數(shù)時(shí)TRUNC(d[,fmt])對(duì)日期的操作,TRUNC與ROUND非常相似,只是不對(duì)日期進(jìn)行舍入,直接截取到對(duì)應(yīng)格式的第一天。4. EXTRACT(fmt FROM d),提取日期中的特定部分。fmt為:YEAR、MONTH、DAY、HOUR、MINUTE、SECOND。其中YEAR、MONTH、DAY可以為DATE類型匹配,也可以與TIMESTAMP類型匹配;但是HOUR、MINUTE、SECOND必須與TIMESTAMP類型匹配。HOUR匹配的結(jié)果中沒有加上時(shí)區(qū),因此在中國運(yùn)行的結(jié)果小8小時(shí)。圖4 EXTRACT函數(shù)示例178。 轉(zhuǎn)換函數(shù)轉(zhuǎn)換函數(shù)將值從一種數(shù)據(jù)類型轉(zhuǎn)換為另外一種數(shù)據(jù)類型。常用的轉(zhuǎn)換函數(shù)有:1. TO_CHAR(d|n[,fmt])把日期和數(shù)字轉(zhuǎn)換為制定格式的字符串。fmt是格式化字符串,日期的格式化字符串前面已經(jīng)學(xué)習(xí)過。代碼演示:TO_CHAR對(duì)日期的處理SQL SELECT TO_CHAR(SYSDATE,39。YYYY年MM月DD日 HH24:MI:SS39。) date ① 2 FROM DUAL。 date2009年08月11日
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1