MLDN-魔樂科技李興華Oracle教程學(xué)習(xí)筆記_第1頁
MLDN-魔樂科技李興華Oracle教程學(xué)習(xí)筆記_第2頁
MLDN-魔樂科技李興華Oracle教程學(xué)習(xí)筆記_第3頁
MLDN-魔樂科技李興華Oracle教程學(xué)習(xí)筆記_第4頁
MLDN-魔樂科技李興華Oracle教程學(xué)習(xí)筆記_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、NO.數(shù)據(jù)類型關(guān)鍵字描述1字符串Varchar2(n)N表示該字符串所能儲存的最大長度;2整數(shù)Number(n)表示最多為n位的整數(shù),有時候也可以用int代替;3小數(shù)Number(n,m)N為小數(shù),n-m為整數(shù)位,有時也可以使用float代替;4日期Date存放日期和時間5大文本Clob可以存儲海量文字,最大4G;6大對象Blob存放二進制數(shù)據(jù),例如電影圖片等;Oracle的數(shù)據(jù)類型:加粗字體(ctrl+B)使用ctrl+/可以快速的彈出一個虛擬符號鍵盤:(alt + 9999)如果只想復(fù)制表的結(jié)構(gòu)到另一張表,而不復(fù)制任何的數(shù)據(jù),則可以使用一個永遠(yuǎn)查詢不到結(jié)果的查詢來執(zhí)行;Create tab

2、le empnull as select * from emp where 1=2;為表重命名:在oracle數(shù)據(jù)庫中,所有的數(shù)據(jù)實際上都是通過數(shù)據(jù)字典保存的,例如:select * from tab;以上就是一個數(shù)據(jù)字典,而在oracle數(shù)據(jù)庫中,提供了三種類型的數(shù)據(jù)字典,最常用的是dbo、user、所以下面查詢一個user_tables數(shù)據(jù)字典;Select * from user_tables;也就是說oracle中的所有數(shù)據(jù)都是按照文件保存的,那么所有的內(nèi)容都會在數(shù)據(jù)字典中注冊,既然這樣,修改表名稱就相當(dāng)于修改一條數(shù)據(jù)而已:Rename 舊的表名稱 to 新的表名稱;如果希望徹底釋放掉

3、一張表所占用的全部資源(表空間、索引等等)就可以使用截斷表的語法,語法如下:Truncate table 表名稱;在oracle10G中,為了防止用戶的誤刪除表的操作,專門提供了回收站的功能,用戶所刪除的表默認(rèn)情況下回在一個回收站之中保存,而用戶也可以通過回收站進行表的恢復(fù),所以此技術(shù)成為閃回(flashback);可以通過如下名稱查看回收站中的表:Show RECYCLEBIN;ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME- - - -MEMBER BIN$r34Nm9OVRxqjy8Jwh1KWJw=$0 TABLE 2012-01

4、-25:10:28:51可以通過如下的命令恢復(fù)別刪除的表:FLASHBACK TABLE 表名稱 TO BEFORE DROP;例如恢復(fù)上面的member表:Flashback table member TO before drop;當(dāng)然呢,也可以直接刪除掉回收站中的而一些數(shù)據(jù)表,語法如下:Purage table 表名稱;比如刪除回收站中的member表:Purge table member;SQL> purge table member;表已清除。也可以清空回收站;PURGE RECYCLEBIN;如果希望刪除的時候不進入回收站,則可以加一個purge關(guān)鍵字;Drop table m

5、yemp purge;表結(jié)構(gòu)的修改:添加列:Alter table add(列1 類型)等和創(chuàng)建類似;如果希望修改已經(jīng)存在的列:Alter table modify ();和創(chuàng)建表類似;但是表結(jié)構(gòu)能不修改就不修改,因為世界上性能最好的DB2是不允許修改表結(jié)構(gòu)的;如果遇到要修改表結(jié)構(gòu)的時候,把表刪除,然后重新建立;唯一約束: UNIQUEUnique對于插入多行為null的值的處理理解為不重復(fù),因為這里不知道它的具體值;主鍵約束:PRIMARY KEY;主鍵約束=非空約束+唯一約束;設(shè)置為主鍵之后,不允許為空,而且不允許重復(fù);作為數(shù)據(jù)的唯一標(biāo)記出現(xiàn);從正常的開發(fā)而言,一張表一般只設(shè)置一個主鍵,但

6、是從SQL語法來看,一張表可以設(shè)置多個主鍵,稱為復(fù)合主鍵:Create table member(Mid number,Name varchar2(50) not null,Constraint pk_mid_name primary key(mid,name);檢查約束:CheckCreate table member(Mid number,Name varchar2(50) not null,Sex varchar2(10) not null,Age number(3) ,Constraint pk_mid_name primary key(mid),Constraint ck_sex c

7、heck (sex in(男,女,中),Constraint ck_age check (age between 0 and 200);Drop table member;Drop table book;Create table member(mid number,name varchar2(50) not null,Constraint pl_mid primary key(mid);Create table book(bid number,title varchar2(50) not null,mid number,Constraint pk_bid primary key(bid),Co

8、nstraint fk_mid foreign key(mid) references member(mid);筆記1部分:1、使用host 可以引用windows系統(tǒng)的copy命令等:Host copy d:demo.sql d:hello.txt2、scott用戶的表結(jié)構(gòu):可以使用以下命令查看所有表:Select * from tab;可以使用以下命令查看表結(jié)構(gòu):Desc 表名稱;雇員表(以下)No.名稱類型描述1EMPNONUMBER(4)雇員的編號,由四位數(shù)字組成2ENAMEVARCHAR2(10)雇員的姓名,由十位字符組成3JOBVARCHAR2(9)雇員的職位4MGRNUMBER(

9、4)雇員對應(yīng)的領(lǐng)導(dǎo)編號,領(lǐng)導(dǎo)也是雇員5HIREDATEDATE雇員的雇傭日期6SALNUMBER(7,2)基本工資,其中兩位小數(shù),五位整數(shù)7COMMNUMBER(7,2)獎金,傭金(銷售人員獨有的)8DEPTNONUMBER(2)雇員所在的部門編號以下表存放工資數(shù)據(jù),基本上用不到;工資登記表:NO.名稱類型描述1GRADENUMBER工資的等級2LOSALNUMBER此登記的最低工資3HISALNUMBER此等級的最高工資SQL> select '雇員編號是:'|empno|'的雇員姓名是:'|ename|',基本工資是:'|sal|

10、9;,職位是'|job|'!'雇員信息 from emp;雇員信息-雇員編號是:7369的雇員姓名是:SMITH,基本工資是:800,職位是CLERK!雇員編號是:7499的雇員姓名是:ALLEN,基本工資是:1600,職位是SALESMAN!雇員編號是:7521的雇員姓名是:WARD,基本工資是:1250,職位是SALESMAN!雇員編號是:7566的雇員姓名是:JONES,基本工資是:2975,職位是MANAGER!雇員編號是:7654的雇員姓名是:MARTIN,基本工資是:1250,職位是SALESMAN!雇員編號是:7698的雇員姓名是:BLAKE,基本工資是:

11、2850,職位是MANAGER!雇員編號是:7782的雇員姓名是:CLARK,基本工資是:2450,職位是MANAGER!雇員編號是:7788的雇員姓名是:SCOTT,基本工資是:3000,職位是ANALYST!雇員編號是:7839的雇員姓名是:KING,基本工資是:5000,職位是PRESIDENT!雇員編號是:7844的雇員姓名是:TURNER,基本工資是:1500,職位是SALESMAN!雇員編號是:7876的雇員姓名是:ADAMS,基本工資是:1100,職位是CLERK!在oracle中所有的數(shù)據(jù)都是區(qū)分大小寫的;大小寫錯誤可能查詢不出相應(yīng)的數(shù)據(jù);以下三個查詢語句的結(jié)構(gòu)是相同的:Sel

12、ect * from emp where job!=CLERK;Select * from emp where job<>CLERK;Select * from emp where not job=CLERK -這三種語法都可以在SQL Server中使用;對between and 求反:Select * from emp where not sal between 1500 and 3000Between and 不只是對數(shù)據(jù),對日期也一樣進行操作;Select * from emp where hiredate between 01-1月-1981 and 31-12月-81S

13、et linesize 300;Set pagesize 200; 對于like操作符,不止可以用于字符串型的數(shù)據(jù),而且可以用于其他類型的數(shù)據(jù); Order by子句是寫在所有語句最后的子句; INITCAP函數(shù),將字符串首字母變?yōu)榇髮?;而所有剩余的字母會變成小寫?Oracle數(shù)據(jù)庫中為了查詢的方便,專門提供了一個dual的虛擬表,這樣from后邊便可以跟這個表名進行查詢; Select * from emp where ename=UPPER(&hh);中的單引號中間的字符表示一個變量,下一步系統(tǒng)會讓用戶輸入該變量的值,然后系統(tǒng)進行查詢:結(jié)果圖如下: SQL> select

14、* from emp where ename=upper('&hh'); 輸入 hh 的值: smith 原值 1: select * from emp where ename=upper('&hh') 新值 1: select * from emp where ename=upper('smith')EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO- - - - - - - -7369 SMITH CLERK 7902 17-12月-80 800 20 字符串操作有兩種方式:語法一:sub

15、str(字符串,開始點)表示截取該字符串從開始點一直到結(jié)尾的部分;語法二:substr(字符串,開始點,結(jié)束點)截取字符串倒數(shù)三個字符:除了可以用length(字符串)-2以外,還可以使用負(fù)數(shù)表示:SQL> select substr(ename,-3) from emp;SUBSTR-ITHLENARDNESTINAKEARKOTTINGNERAMS面試題:請問substr截取的時候下標(biāo)是從0還是從1開始?答:從0和1都一樣;數(shù)字函數(shù):Round(數(shù)字|列,保留小數(shù)的位數(shù)),表示四舍五入的操作;保留小數(shù)位數(shù)如果不寫,則表示不保留小數(shù);Trunc(數(shù)字|列,保留小數(shù)的位數(shù)),舍棄指定位置

16、的內(nèi)容;Mod(數(shù)字1,數(shù)字2)取模,取余數(shù);SQL> select round(903.53567),round(-903.53567),round(903.53567,-1) from dual;ROUND(903.53567) ROUND(-903.53567) ROUND(903.53567,-1)- - - 904 -904 900SQL> select trunc(903.5325),trunc(-903.5367),trunc(903.53567,2),trunc(903.53567,-1) from dual;TRUNC(903.5325) TRUNC(-903.5

17、367) TRUNC(903.53567,2) TRUNC(903.53567,-1)- - - - 903 -903 903.53 900可以使用sysdate來取得當(dāng)前日期的值;Oracle 函數(shù)大全(字符串函數(shù),數(shù)學(xué)函數(shù),日期函數(shù),邏輯運算函數(shù),其他函數(shù))關(guān)鍵詞: Oracle函數(shù)    字符串函數(shù)    數(shù)學(xué)函數(shù)    日期函數(shù)    邏輯運算函數(shù)               &

18、#160;                           SQL中的單記錄函數(shù) 1.ASCII 返回與指定的字符對應(yīng)的十進制數(shù); SQL> select ascii(A) A,ascii(a) a,ascii(0) zero,ascii( ) space from dual; A A ZERO SPACE - - - - 65

19、 97 48 32 2.CHR 給出整數(shù),返回對應(yīng)的字符; SQL> select chr(54740) zhao,chr(65) chr65 from dual; ZH C - - 趙 A 3.CONCAT 連接兩個字符串; SQL> select concat(010-,88888888)|轉(zhuǎn)23 高乾競電話 from dual; 高乾競電話 -23 4.INITCAP 返回字符串并將字符串的第一個字母變?yōu)榇髮? SQL> select initcap(smith) upp from dual; UPP - Smith 5.INSTR(C1,C

20、2,I,J) 在一個字符串中搜索指定的字符,返回發(fā)現(xiàn)指定的字符的位置; C1 被搜索的字符串 C2 希望搜索的字符串 I 搜索的開始位置,默認(rèn)為1 J 出現(xiàn)的位置,默認(rèn)為1 SQL> select instr(oracle traning,ra,1,2) instring from dual; INSTRING - 9 6.LENGTH 返回字符串的長度; SQL> select name,length(name),addr,length(addr),sal,length(to_char(sal) from gao.nchar_tst; NAME LENGTH(NAME) ADDR

21、 LENGTH(ADDR) SAL LENGTH(TO_CHAR(SAL) - - - - - - 高乾競 3 北京市海錠區(qū) 6 9999.99 7 7.LOWER 返回字符串,并將所有的字符小寫 SQL> select lower(AaBbCcDd)AaBbCcDd from dual; AABBCCDD - aabbccdd 8.UPPER 返回字符串,并將所有的字符大寫 SQL> select upper(AaBbCcDd) upper from dual; UPPER - AABBCCDD 9.RPAD和LPAD(粘貼字符) RPAD 在列的右邊粘貼字符 LPAD 在列的左

22、邊粘貼字符 SQL> select lpad(rpad(gao,10,*),17,*)from dual; LPAD(RPAD(GAO,1 - *gao* 不夠字符則用*來填滿 10.LTRIM和RTRIM LTRIM 刪除左邊出現(xiàn)的字符串 RTRIM 刪除右邊出現(xiàn)的字符串 SQL> select ltrim(rtrim( gao qian jing , ), ) from dual; LTRIM(RTRIM( - gao qian jing 11.SUBSTR(string,start,count) 取子字符串,從start開始,取count個 SQL> select su

23、bstr3,8) from dual; SUBSTR( - 08888888 12.REPLACE(string,s1,s2) string 希望被替換的字符或變量 s1 被替換的字符串 s2 要替換的字符串 SQL> select replace(he love you,he,i) from dual; REPLACE(H - i love you 13.SOUNDEX 返回一個與給定的字符串讀音相同的字符串 SQL> create table table1(xm varchar(8); SQL> insert into table1 values

24、(weather); SQL> insert into table1 values(wether); SQL> insert into table1 values(gao); SQL> select xm from table1 where soundex(xm)=soundex(weather); XM - weather wether 14.TRIM(s from string) LEADING 剪掉前面的字符 TRAILING 剪掉后面的字符 如果不指定,默認(rèn)為空格符 15.ABS 返回指定值的絕對值 SQL> select abs(100),abs(-100)

25、from dual; ABS(100) ABS(-100) - - 100 100 16.ACOS 給出反余弦的值 SQL> select acos(-1) from dual; ACOS(-1) - 3.1415927 17.ASIN 給出反正弦的值 SQL> select asin(0.5) from dual; ASIN(0.5) - .52359878 18.ATAN 返回一個數(shù)字的反正切值 SQL> select atan(1) from dual; ATAN(1) - .78539816 19.CEIL 返回大于或等于給出數(shù)字的最小整數(shù) SQL> selec

26、t ceil(3.1415927) from dual; CEIL(3.1415927) - 4 20.COS 返回一個給定數(shù)字的余弦 SQL> select cos(-3.1415927) from dual; COS(-3.1415927) - -121.COSH 返回一個數(shù)字反余弦值 SQL> select cosh(20) from dual; COSH(20) - 242582598 22.EXP 返回一個數(shù)字e的n次方根 SQL> select exp(2),exp(1) from dual; EXP(2) EXP(1) - - 7.3890561 2.71828

27、18 23.FLOOR 對給定的數(shù)字取整數(shù) SQL> select floor(2345.67) from dual; FLOOR(2345.67) - 2345 24.LN 返回一個數(shù)字的對數(shù)值 SQL> select ln(1),ln(2),ln(2.7182818) from dual; LN(1) LN(2) LN(2.7182818) - - - 0 .69314718 .99999999 25.LOG(n1,n2) 返回一個以n1為底n2的對數(shù) SQL> select log(2,1),log(2,4) from dual; LOG(2,1) LOG(2,4) -

28、 - 0 2 26.MOD(n1,n2) 返回一個n1除以n2的余數(shù) SQL> select mod(10,3),mod(3,3),mod(2,3) from dual; MOD(10,3) MOD(3,3) MOD(2,3) - - - 1 0 2 27.POWER 返回n1的n2次方根 SQL> select power(2,10),power(3,3) from dual; POWER(2,10) POWER(3,3) - - 1024 27 28.ROUND和TRUNC 按照指定的精度進行舍入 SQL> select round(55.5),round(-55.4),

29、trunc(55.5),trunc(-55.5) from dual; ROUND(55.5) ROUND(-55.4) TRUNC(55.5) TRUNC(-55.5) - - - - 56 -55 55 -55 29.SIGN 取數(shù)字n的符號,大于0返回1,小于0返回-1,等于0返回0 SQL> select sign(123),sign(-100),sign(0) from dual; SIGN(123) SIGN(-100) SIGN(0) - - - 1 -1 0 30.SIN 返回一個數(shù)字的正弦值 SQL> select sin(1.57079) from dual;

30、SIN(1.57079) - 1 31.SIGH 返回雙曲正弦的值 SQL> select sin(20),sinh(20) from dual; SIN(20) SINH(20) - - .91294525 242582598 32.SQRT 返回數(shù)字n的根 SQL> select sqrt(64),sqrt(10) from dual; SQRT(64) SQRT(10) - - 8 3.1622777 33.TAN 返回數(shù)字的正切值 SQL> select tan(20),tan(10) from dual; TAN(20) TAN(10) - - 2.2371609

31、.64836083 34.TANH 返回數(shù)字n的雙曲正切值 SQL> select tanh(20),tan(20) from dual; TANH(20) TAN(20) - - 1 2.2371609 35.TRUNC 按照指定的精度截取一個數(shù) SQL> select trunc(124.1666,-2) trunc1,trunc(124.16666,2) from dual; TRUNC1 TRUNC(124.16666,2) - - 100 124.16 36.ADD_MONTHS 增加或減去月份 SQL> select to_char(add_months(to_d

32、ate(199912,yyyymm),2),yyyymm) from dual; TO_CHA - 200002 SQL> select to_char(add_months(to_date(199912,yyyymm),-2),yyyymm) from dual; TO_CHA - 199910 37.LAST_DAY 返回日期的最后一天 SQL> select to_char(sysdate,yyyy.mm.dd),to_char(sysdate)+1,yyyy.mm.dd) from dual; TO_CHAR(SY TO_CHAR(S - - 2004.05.09 2004

33、.05.10 SQL> select last_day(sysdate) from dual; LAST_DAY(S - 31-5月 -04 38.MONTHS_BETWEEN(date2,date1) 給出date2-date1的月份 SQL> select months_between(19-12月-1999,19-3月-1999) mon_between from dual; MON_BETWEEN - 9 SQL>selectmonths_between(to_date(2000.05.20,yyyy.mm.dd),to_date(2005.05.20,yyyy.mm

34、.dd) mon_betw from dual; MON_BETW - -60 39.NEW_TIME(date,this,that) 給出在this時區(qū)=other時區(qū)的日期和時間 SQL> select to_char(sysdate,yyyy.mm.dd hh24:mi:ss) bj_time,to_char(new_time 2 (sysdate,PDT,GMT),yyyy.mm.dd hh24:mi:ss) los_angles from dual; BJ_TIME LOS_ANGLES - - 2004.05.09 11:05:32 2004.05.09 18:05:32 4

35、0.NEXT_DAY(date,day) 給出日期date和星期x之后計算下一個星期的日期 SQL> select next_day(18-5月-2001,星期五) next_day from dual; NEXT_DAY - 25-5月 -0141.SYSDATE 用來得到系統(tǒng)的當(dāng)前日期 SQL> select to_char(sysdate,dd-mm-yyyy day) from dual; TO_CHAR(SYSDATE, - 09-05-2004 星期日 trunc(date,fmt)按照給出的要求將日期截斷,如果fmt=mi表示保留分,截斷秒 SQL> selec

36、t to_char(trunc(sysdate,hh),yyyy.mm.dd hh24:mi:ss) hh, 2 to_char(trunc(sysdate,mi),yyyy.mm.dd hh24:mi:ss) hhmm from dual; HH HHMM - - 2004.05.09 11:00:00 2004.05.09 11:17:00 42.CHARTOROWID 將字符數(shù)據(jù)類型轉(zhuǎn)換為ROWID類型 SQL> select rowid,rowidtochar(rowid),ename from scott.emp; ROWID ROWIDTOCHAR(ROWID) ENAME

37、- - - AAAAfKAACAAAAEqAAA AAAAfKAACAAAAEqAAA SMITH AAAAfKAACAAAAEqAAB AAAAfKAACAAAAEqAAB ALLEN AAAAfKAACAAAAEqAAC AAAAfKAACAAAAEqAAC WARD AAAAfKAACAAAAEqAAD AAAAfKAACAAAAEqAAD JONES 43.CONVERT(c,dset,sset) 將源字符串 sset從一個語言字符集轉(zhuǎn)換到另一個目的dset字符集 SQL> select convert(strutz,we8hp,f7dec) "conversion&q

38、uot; from dual; conver - strutz 44.HEXTORAW 將一個十六進制構(gòu)成的字符串轉(zhuǎn)換為二進制 45.RAWTOHEXT 將一個二進制構(gòu)成的字符串轉(zhuǎn)換為十六進制 46.ROWIDTOCHAR 將ROWID數(shù)據(jù)類型轉(zhuǎn)換為字符類型 47.TO_CHAR(date,format) SQL> select to_char(sysdate,yyyy/mm/dd hh24:mi:ss) from dual; TO_CHAR(SYSDATE,YY - 2004/05/09 21:14:41 48.TO_DATE(string,format) 將字符串轉(zhuǎn)化為ORACLE中

39、的一個日期 49.TO_MULTI_BYTE 將字符串中的單字節(jié)字符轉(zhuǎn)化為多字節(jié)字符 SQL> select to_multi_byte(高) from dual; TO - 高 50.TO_NUMBER 將給出的字符轉(zhuǎn)換為數(shù)字 SQL> select to_number(1999) year from dual; YEAR - 1999 51.BFILENAME(dir,file) 指定一個外部二進制文件 SQL>insert into file_tb1 values(bfilename(lob_dir1,image1.gif); 52.CONVERT(x,desc,sou

40、rce) 將x字段或變量的源source轉(zhuǎn)換為desc SQL> select sid,serial#,username,decode(command, 2 0,none, 3 2,insert, 4 3, 5 select, 6 6,update, 7 7,delete, 8 8,drop, 9 other) cmd from v$session where type!=background; SID SERIAL# USERNAME CMD - - - - 1 1 none 2 1 none 3 1 none 4 1 none 5 1 none 6 1 none 7 1275 non

41、e 8 1275 none 9 20 GAO select 10 40 GAO none 53.DUMP(s,fmt,start,length) DUMP函數(shù)以fmt指定的內(nèi)部數(shù)字格式返回一個VARCHAR2類型的值 SQL> col global_name for a30 SQL> col dump_string for a50 SQL> set lin 200 SQL> select global_name,dump(global_name,1017,8,5) dump_string from global_name; GLOBAL_NAME DUMP_STRING

42、 - - ORACLE.WORLD Typ=1 Len=12 CharacterSet=ZHS16GBK: W,O,R,L,D 54.EMPTY_BLOB()和EMPTY_CLOB() 這兩個函數(shù)都是用來對大數(shù)據(jù)類型字段進行初始化操作的函數(shù) 55.GREATEST 返回一組表達(dá)式中的最大值,即比較字符的編碼大小. SQL> select greatest(AA,AB,AC) from dual; GR - AC SQL> select greatest(啊,安,天) from dual; GR - 天 56.LEAST 返回一組表達(dá)式中的最小值 SQL> select lea

43、st(啊,安,天) from dual; LE - 啊 57.UID 返回標(biāo)識當(dāng)前用戶的唯一整數(shù) SQL> show user USER 為"GAO" SQL> select username,user_id from dba_users where user_id=uid; USERNAME USER_ID - - GAO 25 58.USER 返回當(dāng)前用戶的名字 SQL> select user from dual; USER - GAO 59.USEREVN 返回當(dāng)前用戶環(huán)境的信息,opt可以是: ENTRYID,SESSIONID,TERMINAL

44、,ISDBA,LABLE,LANGUAGE,CLIENT_INFO,LANG,VSIZE ISDBA 查看當(dāng)前用戶是否是DBA如果是則返回true SQL> select userenv(isdba) from dual; USEREN - FALSE SQL> select userenv(isdba) from dual; USEREN - TRUE SESSION 返回會話標(biāo)志 SQL> select userenv(sessionid) from dual; USERENV(SESSIONID) - 152 ENTRYID 返回會話人口標(biāo)志 SQL> selec

45、t userenv(entryid) from dual; USERENV(ENTRYID) - 0 INSTANCE 返回當(dāng)前INSTANCE的標(biāo)志 SQL> select userenv(instance) from dual; USERENV(INSTANCE) - 1 LANGUAGE 返回當(dāng)前環(huán)境變量 SQL> select userenv(language) from dual; USERENV(LANGUAGE) - SIMPLIFIED CHINESE_CHINA.ZHS16GBK LANG 返回當(dāng)前環(huán)境的語言的縮寫 SQL> select userenv(l

46、ang) from dual; USERENV(LANG) - ZHS TERMINAL 返回用戶的終端或機器的標(biāo)志 SQL> select userenv(terminal) from dual; USERENV(TERMINA - GAO VSIZE(X) 返回X的大小(字節(jié))數(shù) SQL> select vsize(user),user from dual; VSIZE(USER) USER - - 6 SYSTEM60.AVG(DISTINCT|ALL) all表示對所有的值求平均值,distinct只對不同的值求平均值 SQLWKS> create table tab

47、le3(xm varchar(8),sal number(7,2); 語句已處理。 SQLWKS> insert into table3 values(gao,1111.11); SQLWKS> insert into table3 values(gao,1111.11); SQLWKS> insert into table3 values(zhu,5555.55); SQLWKS> commit; SQL> select avg(distinct sal) from gao.table3; AVG(DISTINCTSAL) - 3333.33 SQL> s

48、elect avg(all sal) from gao.table3; AVG(ALLSAL) - 2592.59 61.MAX(DISTINCT|ALL) 求最大值,ALL表示對所有的值求最大值,DISTINCT表示對不同的值求最大值,相同的只取一次 SQL> select max(distinct sal) from scott.emp; MAX(DISTINCTSAL) - 5000 62.MIN(DISTINCT|ALL) 求最小值,ALL表示對所有的值求最小值,DISTINCT表示對不同的值求最小值,相同的只取一次 SQL> select min(all sal) fro

49、m gao.table3; MIN(ALLSAL) - 1111.11 63.STDDEV(distinct|all) 求標(biāo)準(zhǔn)差,ALL表示對所有的值求標(biāo)準(zhǔn)差,DISTINCT表示只對不同的值求標(biāo)準(zhǔn)差 SQL> select stddev(sal) from scott.emp; STDDEV(SAL) - 1182.5032 SQL> select stddev(distinct sal) from scott.emp; STDDEV(DISTINCTSAL) - 1229.951 64.VARIANCE(DISTINCT|ALL) 求協(xié)方差 SQL> select var

50、iance(sal) from scott.emp; VARIANCE(SAL) - 1398313.9 65.GROUP BY 主要用來對一組數(shù)進行統(tǒng)計 SQL> select deptno,count(*),sum(sal) from scott.emp group by deptno; DEPTNO COUNT(*) SUM(SAL) - - - 10 3 8750 20 5 10875 30 6 9400 66.HAVING 對分組統(tǒng)計再加限制條件 SQL> select deptno,count(*),sum(sal) from scott.emp group by deptno having count(*)>=5; DEPTNO COUNT(*) SUM(SAL) - - - 20 5 10875 30 6 9400 SQL> select deptno,co

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論