鎰熶簬鎬繪湁浜涚綉鍙嬫彁鍑轟竴浜涢潪甯稿熀紜鐨勯棶棰橈紝姣斿鏈夋病鏈夊疄鐜版煇鏌愬姛鑳界殑鍑芥暟鍟婏紝鏌愭煇鍑芥暟鏄仛浠涔堢敤鐨勫晩錛屾牸寮忔槸浠涔堢瓑絳夛紝鍚屾椂涔熸劅鍙楀埌鑷繁瀵筼racle鍑芥暟璁よ瘑鐨勪笉瓚籌紝浜庢槸闆嗕腑鏈堜綑鏃墮棿涓撴敞浜巓racle鍑芥暟錛屽皬鏈夊績寰椾笉鏁㈢钘忥紝鍙戜箣涓庤鍏叡浜?
鏈枃騫朵笉鍑嗗浠嬬粛鍏ㄩ儴鐨刼racle鍑芥暟錛屽綋鍓嶆儏鍔夸笅錛屼亢涔熻繕娌¤繖涓椂闂達紝闇瑕佸涔?fàn)鐨勪笢瑗垮お澶氫簡锛岃鎶婂鏁版棄櫁磋姳鍦ㄥ涔?fàn)緇忓父鑳界敤涓婄殑鎶鏈柟闈?)錛屾墍浠ュ鏋滄槸鍑嗗娣卞叆浜嗚В鎵鏈塷racle鍑芥暟鐨勬湅鍙嬶紝榪樻槸鍘誨叧娉細Oracle SQL Reference瀹樻柟鏂囨。鏇撮潬璋變竴浜涖?
鏈枃鏇村灝嗕細浠嬬粛涓夋濆湪鏃ュ父涓粡甯鎬細鐢ㄥ埌鐨勶紝鎴栬呰櫧鐒跺緢灝戠敤鍒幫紝浣嗘槸鎰熻鎸烘湁鎰忔濈殑涓浜涘嚱鏁般傚垎浜岀被浠嬬粛錛屽垎鍒槸錛?
钁楀悕鍑芥暟綃囥錛嶇粡甯哥敤鍒扮殑鍑芥暟
闈炶憲鍚嶅嚱鏁扮瘒錛嶅嵆铏界劧寰堝皯鐢ㄥ埌錛屼絾鏌愪簺鎯呭喌涓嬪嵈寰堝疄鐢?
娉細N琛ㄧず鏁板瓧鍨嬶紝C琛ㄧず瀛楃鍨嬶紝D琛ㄧず鏃ユ湡鍨嬶紝[]琛ㄧず鍐呬腑鍙傛暟鍙蹇界暐錛宖mt琛ㄧず鏍煎紡銆?
鍗曞煎嚱鏁板湪鏌ヨ涓繑鍥炲崟涓鹼紝鍙搴旂敤鍒皊elect錛寃here瀛愬彞錛宻tart with浠ュ強connect by 瀛愬彞鍜宧aving瀛愬彞銆?
(涓).鏁板煎瀷鍑芥暟(Number Functions)
鏁板煎瀷鍑芥暟杈撳叆鏁板瓧鍨嬪弬鏁板茍榪斿洖鏁板煎瀷鐨勫箋傚鏁拌綾誨嚱鏁扮殑榪斿洖鍊兼敮鎸?8浣嶅皬鏁扮偣錛岃濡傦細COS, COSH, EXP, LN, LOG,
SIN, SINH, SQRT, TAN, and TANH 鏀寔36浣嶅皬鏁扮偣銆侫COS, ASIN, ATAN, and
ATAN2鏀寔30浣嶅皬鏁扮偣銆?
1銆丮OD(n1,n2) 榪斿洖n1闄2鐨勪綑鏁幫紝濡傛灉n2=0鍒欒繑鍥瀗1鐨勫箋?
渚嬪錛歋ELECT MOD(24,5) FROM DUAL;
2銆?
ROUND(n1[,n2])
榪斿洖鍥涜垗浜斿叆灝忔暟鐐瑰彸杈筺2浣嶅悗n1鐨勫鹼紝n2緙虹渷鍊間負0錛屽鏋渘2涓鴻礋鏁板氨鑸嶅叆鍒板皬鏁扮偣宸﹁竟鐩稿簲鐨勪綅涓?铏界劧oracle
documents涓婃彁鍒皀2鐨勫煎繀欏諱負鏁存暟錛屼簨瀹炰笂鎵ц鏃舵澶勭殑鍒ゆ柇騫朵笉涓ヨ皚錛屽嵆浣縩2涓洪潪鏁存暟錛屽畠涔熶細鑷姩灝唍2鍙栨暣鍚庡仛澶勭悊錛屼絾鏄垜鏂囨。涓叾瀹冩彁鍒板繀欏諱負鏁寸殑鍦版柟闇瑕佺壒鍒敞鎰忥紝濡傛灉涓嶄負鏁存墽琛屾椂浼氭姤閿欑殑)銆?
渚嬪錛歋ELECT ROUND(23.56),ROUND(23.56,1),ROUND(23.56,-1) FROM DUAL;
3銆乀RUNC(n1[,n2] 榪斿洖鎴熬鍒皀2浣嶅皬鏁扮殑n1鐨勫鹼紝n2緙虹渷璁劇疆涓?錛屽綋n2涓虹己鐪佽緗椂浼氬皢n1鎴熬涓烘暣鏁幫紝濡傛灉n2涓鴻礋鍊鹼紝灝辨埅灝懼湪灝忔暟鐐瑰乏杈圭浉搴旂殑浣嶄笂銆?
渚嬪錛歋ELECT TRUNC(23.56),TRUNC(23.56,1),TRUNC(23.56,-1) FROM DUAL;
(浜?.瀛楃鍨嬪嚱鏁拌繑鍥炲瓧絎﹀?Character Functions Returning Character Values)
璇ョ被鍑芥暟榪斿洖涓庤緭鍏ョ被鍨嬬浉鍚岀殑綾誨瀷銆?
榪斿洖鐨凜HAR綾誨瀷鍊奸暱搴︿笉瓚呰繃2000瀛楄妭錛?
榪斿洖鐨刅CHAR2綾誨瀷鍊奸暱搴︿笉瓚呰繃4000瀛楄妭錛?
濡傛灉涓婅堪搴旇繑鍥炵殑瀛楃闀垮害瓚呭嚭錛宱racle騫朵笉浼氭姤閿欒屾槸鐩存帴鎴柇鑷蟲渶澶у彲鏀寔闀垮害榪斿洖銆?
榪斿洖鐨凜LOB綾誨瀷鍊奸暱搴︿笉瓚呰繃4G錛?
瀵逛簬CLOB綾誨瀷鐨勫嚱鏁幫紝濡傛灉榪斿洖鍊奸暱搴﹁秴鍑猴紝oracle涓嶄細榪斿洖浠諱綍閿欒鑰屾槸鐩存帴鎶涘嚭閿欒銆?
1銆丩OWER(c) 灝嗘寚瀹氬瓧絎︿覆鍐呭瓧絎﹀彉涓哄皬鍐欙紝鏀寔CHAR,VARCHAR2,NCHAR,NVARCHAR2,CLOB,NCLOB綾誨瀷
渚嬪錛歋ELECT LOWER('WhaT is tHis') FROM DUAL;
2銆乁PPER(c) 灝嗘寚瀹氬瓧絎︿覆鍐呭瓧絎﹀彉涓哄ぇ鍐欙紝鏀寔CHAR,VARCHAR2,NCHAR,NVARCHAR2,CLOB,NCLOB綾誨瀷
渚嬪錛歋ELECT UPPER('WhaT is tHis') FROM DUAL;
3銆丩PAD(c1,n[,c2]) 榪斿洖鎸囧畾闀垮害=n鐨勫瓧絎︿覆錛岄渶瑕佹敞鎰忕殑鏈夊嚑鐐癸細
濡傛灉n<c1.length鍒欎粠鍙沖埌宸︽埅鍙栨寚瀹氶暱搴﹁繑鍥烇紱
濡傛灉n>c1.length and c2 is null錛屼互絀烘牸浠庡乏鍚戝彸琛ュ厖瀛楃闀垮害鑷硁騫惰繑鍥烇紱
濡傛灉n>c1.length and c2 is not null錛屼互鎸囧畾瀛楃c2浠庡乏鍚戝彸琛ュ厖c1闀垮害鑷硁騫惰繑鍥烇紱
渚嬪錛歋ELECT LPAD('WhaT is tHis',5),LPAD('WhaT is tHis',25),LPAD('WhaT is tHis',25,'-') FROM DUAL;
鏈鍚庡ぇ瀹跺啀鐚滀竴鐚滐紝濡傛灉n<0錛岀粨鏋滀細鎬庝箞鏍?
4銆丷PAD(c1,n[,c2]) 榪斿洖鎸囧畾闀垮害=n鐨勫瓧絎︿覆錛屽熀鏈笌涓婂悓錛屼笉榪囪ˉ鍏呭瓧絎︽槸浠庡彸鍚戝乏鏂瑰悜姝eソ涓庝笂鐩稿弽錛?
渚嬪錛歋ELECT RPAD('WhaT is tHis',5),RPAD('WhaT is tHis',25),RPAD('WhaT is tHis',25,'-') FROM DUAL;
5銆乀RIM([[LEADING||TRAILING||BOTH] c2 FROM] c1) 鍝堝搱錛岃淇烘棤鏁岀殑褰㈠鏂瑰紡鎼炴檿澶翠簡鍚э紝榪欎釜鍦版柟榪樻槸鐪嬪浘鏇存槑浜嗕竴浜涖?
鐪嬭搗鏉ュ緢澶嶆潅錛岀悊瑙h搗鏉ュ緢綆鍗曪細
濡傛灉娌℃湁鎸囧畾浠諱綍鍙傛暟鍒檕racle鍘婚櫎c1澶村熬絀烘牸
渚嬪錛歋ELECT TRIM(' WhaT is tHis ') FROM DUAL;
濡傛灉鎸囧畾浜哻2鍙傛暟錛屽垯oracle鍘繪帀c1澶村熬c2(榪欎釜寤鴻緇嗚嚧嫻嬭瘯錛屾湁澶氱涓嶅悓鎯呭艦鐨勫摕)
渚嬪錛歋ELECT TRIM('W' FROM 'WhaT is tHis w W') FROM DUAL;
濡傛灉鎸囧畾浜唋eading鍙傛暟鍒欎細鍘繪帀c1澶撮儴c2
渚嬪錛歋ELECT TRIM(leading 'W' FROM 'WhaT is tHis w W') FROM DUAL;
濡傛灉鎸囧畾浜唗railing鍙傛暟鍒欎細鍘繪帀c1灝鵑儴c2
渚嬪錛歋ELECT TRIM(trailing 'W' FROM 'WhaT is tHis w W') FROM DUAL;
濡傛灉鎸囧畾浜哹oth鍙傛暟鍒欎細鍘繪帀c1澶村熬c2(璺熶笉鎸囧畾鏈夊尯鍒悧錛熸病鍖哄埆錛?
渚嬪錛歋ELECT TRIM(both 'W' FROM 'WhaT is tHis w W') FROM DUAL;
娉ㄦ剰錛歝2闀垮害=1
6銆丩TRIM(c1[,c2]) 鍗冧竾琛ㄤ互涓轟笌涓婇潰閭d釜闀跨殑鍍忥紝鍔熻兘涔熶笌涓婇潰鐨勭被浼鹼紝鏈嚱鏁版槸浠庡瓧絎︿覆c1宸︿晶鎴彇鎺変笌鎸囧畾瀛楃涓瞔2鐩稿悓鐨勫瓧絎﹀茍榪斿洖銆傚鏋渃2涓虹┖鍒欓粯璁ゆ埅鍙栫┖鏍箋?
渚嬪錛歋ELECT LTRIM('WWhhhhhaT is tHis w W','Wh') FROM DUAL;
7銆丷TRIM(c1,c2)涓庝笂鍚岋紝涓嶈繃鏂瑰悜鐩稿弽
渚嬪錛歋ELECT RTRIM('WWhhhhhaT is tHis w W','W w') FROM DUAL;
8銆丷EPLACE(c1,c2[,c3]) 灝哻1瀛楃涓蹭腑鐨刢2鏇挎崲涓篶3錛屽鏋渃3涓虹┖錛屽垯浠巆1涓垹闄ゆ墍鏈塩2銆?
渚嬪錛歋ELECT REPLACE('WWhhhhhaT is tHis w W','W','-') FROM DUAL;
9銆丼OUNDEX(c) 紲炲鐨勫嚱鏁板晩錛岃鍑芥暟榪斿洖瀛楃涓插弬鏁扮殑璇煶琛ㄧず褰㈠紡錛屽浜庢瘮杈冧竴浜涜闊崇浉鍚岋紝浣嗘槸鎷煎啓涓嶅悓鐨勫崟璇嶉潪甯告湁鐢ㄣ傝綆楄闊崇殑綆楁硶濡備笅錛?
淇濈暀瀛楃涓查瀛楁瘝錛屼絾鍒犻櫎a銆乪銆乭銆乮銆乷銆亀銆亂銆?
灝嗕笅琛ㄤ腑鐨勬暟瀛楄祴緇欑浉瀵瑰簲鐨勫瓧姣嶏細
1錛歜銆乫銆乸銆乿
2錛歝銆乬銆乲銆乹銆乻銆亁銆亃
3錛歞銆乼
4錛歭
5錛歮銆乶
6錛歊
濡傛灉瀛楃涓蹭腑瀛樺湪鎷ユ湁鐩稿悓鏁板瓧鐨?涓互涓婏紙鍖呭惈2涓級鐨勫瓧姣嶅湪涓璧鳳紙渚嬪b鍜宖錛夛紝鎴栬呭彧鏈塰鎴杦錛屽垯鍒犻櫎鍏朵粬鐨勶紝鍙繚鐣?涓紱
鍙繑鍥炲墠4涓瓧鑺傦紝涓嶅鐢?濉厖
渚嬪錛歋ELECT SOUNDEX('dog'),soundex('boy') FROM DUAL;
10銆丼UBSTR(c1,n1[,n2]) 鎴彇鎸囧畾闀垮害鐨勫瓧絎︿覆銆傜◢涓嶆敞鎰忓氨鍙兘鍏呮弧浜嗛櫡闃辯殑鍑芥暟銆?
n1=寮濮嬮暱搴︼紱
n2=鎴彇鐨勫瓧絎︿覆闀垮害錛屽鏋滀負絀猴紝榛樿鎴彇鍒板瓧絎︿覆緇撳熬錛?
飦?濡傛灉n1=0 then n1=1
飦?濡傛灉n1>0錛屽垯oracle浠庡乏鍚戝彸紜璧峰浣嶇疆鎴彇
渚嬪錛歋ELECT SUBSTR('What is this',5,3) FROM DUAL;
飦?濡傛灉n1<0錛屽垯oracle浠庡彸鍚戝乏鏁扮‘璁よ搗濮嬩綅緗?
渚嬪錛歋ELECT SUBSTR('What is this',-5,3) FROM DUAL;
飦?濡傛灉n1>c1.length鍒欒繑鍥炵┖
渚嬪錛歋ELECT SUBSTR('What is this',50,3) FROM DUAL;
鐒跺悗鍐嶈浣犵寽鐚滐紝濡傛灉n2<1錛屼細濡備綍榪斿洖鍊煎憿
11銆?
TRANSLATE(c1,c2,c3)
灝卞姛鑳借岃█錛屾鍑芥暟涓巖eplace鏈変簺鐩鎬技銆備絾闇瑕佹敞鎰忕殑涓鐐規(guī)槸錛宼ranslate鏄粷瀵瑰尮閰嶆浛鎹紝榪欑偣涓巖eplace鍑芥暟鍏鋒湁闈炲父澶у尯鍒備粈涔堟槸緇濆鍖歸厤鏇挎崲鍛紵綆鍗曠殑璇達紝鏄皢瀛楃涓瞔1涓寜涓瀹氱殑鏍煎紡c2鏇挎崲涓篶3銆傚鏋滄枃瀛楀艦瀹逛粛鐒舵棤娉曠悊瑙o紝鎴戜滑閫氳繃鍑犲叿瀹炰緥鏉ヨ鏄庯細
渚嬪錛?
SELECT TRANSLATE('What is this','','-') FROM DUAL;
SELECT TRANSLATE('What is this','-','') FROM DUAL;
緇撴灉閮芥槸絀恒傛潵璇曡瘯榪欎釜錛?
SELECT TRANSLATE('What is this',' ',' ') FROM DUAL;
鍐嶆潵鐪嬭繖涓細
SELECT TRANSLATE('What is this','ait','-*') FROM DUAL;
鏄惁鏄庣櫧浜嗙偣鍛紵Replace鍑芥暟鐞嗚В姣旇緝綆鍗曪紝瀹冩槸灝嗗瓧絎︿覆涓寚瀹氬瓧絎︽浛鎹㈡垚鍏跺畠瀛楃錛屽畠鐨勫瓧絎﹀繀欏繪槸榪炵畫鐨勩傝宼ranslate涓紝鍒欐槸鎸囧畾瀛楃涓?
c1涓嚭鐜扮殑c2錛屽皢c2涓悇涓瓧絎︽浛鎹㈡垚c3涓綅緗『搴忎笌鍏剁浉鍚岀殑c3涓殑瀛楃銆傛槑鐧戒簡錛烺eplace鏄浛鎹紝鑰宼ranslate鍒欏儚鏄繃婊?/p>
(涓?.瀛楃鍨嬪嚱鏁拌繑鍥炴暟瀛楀?Character Functions Returning Number Values)
鏈被鍑芥暟鏀寔鎵鏈夌殑鏁版嵁綾誨瀷
1銆両NSTR(c1,c2[,n1[,n2]]) 榪斿洖c2鍦╟1涓綅緗?
c1:鍘熷瓧絎︿覆
c2:瑕佸鎵劇殑瀛楃涓?
n1:鏌ヨ璧峰浣嶇疆錛屾鍊艱〃紺轟粠宸﹀埌鍙籌紝璐熷艱〃紺轟粠鍙沖埌宸?(澶у皬琛ㄧず浣嶇疆,姣斿3琛ㄧず宸﹂潰絎?澶勫紑濮?-3琛ㄧず鍙抽潰絎?澶勫紑濮?銆傞粦榛戯紝濡傛灉涓?鐨勮瘽錛屽垯榪斿洖鐨勪篃鏄?
n2:絎嚑涓尮閰嶉」銆傚ぇ浜?
渚嬪錛歋ELECT INSTR('abcdefg','e',-3) FROM DUAL;
2銆丩ENGTH(c) 榪斿洖鎸囧畾瀛楃涓茬殑闀垮害銆傚鏋?
渚嬪錛歋ELECT LENGTH('A123涓?) FROM DUAL;
鐚滅寽SELECT LENGTH('') FROM DUAL;鐨勮繑鍥炲兼槸浠涔?
(鍥?.鏃ユ湡鍑芥暟(Datetime Functions)
鏈被鍑芥暟涓紝闄onths_between榪斿洖鏁板煎錛屽叾瀹冮兘灝嗚繑鍥炴棩鏈熴?
1銆丄DD_MONTHS() 榪斿洖鎸囧畾鏃ユ湡鏈堜喚+n涔嬪悗鐨勫鹼紝n鍙互涓轟換浣曟暣鏁般?
渚嬪錛歋ELECT ADD_MONTHS(sysdate,12),ADD_MONTHS(sysdate,-12) FROM DUAL;
2銆丆URRENT_DATE 榪斿洖褰撳墠session鎵鍦ㄦ椂鍖虹殑榛樿鏃墮棿
渚嬪錛?
SQL> alter session set nls_date_format = 'mm-dd-yyyy' ;
SQL> select current_date from dual;
3銆?
SYSDATE
鍔熻兘涓庝笂鐩稿悓錛岃繑鍥炲綋鍓峴ession鎵鍦ㄦ椂鍖虹殑榛樿鏃墮棿銆備絾鏄渶瑕佹敞鎰忕殑涓鐐規(guī)槸錛屽鏋滃悓鏃朵嬌鐢╯ysdate涓巆urrent_date鑾峰緱鐨勬椂闂翠笉涓
瀹氱浉鍚岋紝鏌愪簺鎯呭喌涓媍urrent_date浼氭瘮sysdate蹇竴縐掋傜粡榪囦笌xyf_tck(鍏勫彴鐨勫ぇ浣淥RACLE鐨勫伐浣滄満鍒跺啓鐨勫緢濂斤紝娣卞叆嫻呭嚭)鐨?
鐭殏浜ゆ祦錛屾垜浠涓篶urrent_date鏄皢current_timestamp涓縐掑洓鑸嶄簲鍏ュ悗鐨勮繑鍥烇紝铏界劧娌℃湁鎵懼埌鏂囨。鏀寔錛屼絾鏄兂鏉ュ簲璇ュ叓涔?jié)涓?
紱誨崄銆傚悓鏃訛紝浠呮槸鏌愪簺鎯呭喌涓嬩細鏈変竴縐掔殑璇樊錛屼竴鑸儏鍐典笅騫朵笉浼氬浣犵殑鎿嶄綔閫犳垚褰卞搷錛屾墍浠ヤ簡瑙e嵆鍙?
渚嬪錛歋ELECT SYSDATE,CURRENT_DATE FROM DUAL;
4銆丩AST_DAY(d) 榪斿洖鎸囧畾鏃墮棿鎵鍦ㄦ湀鐨勬渶鍚庝竴澶?
渚嬪錛歋ELECT last_day(SYSDATE) FROM DUAL;
5銆丯EXT_DAY(d,n) 榪斿洖鎸囧畾鏃ユ湡鍚庣涓涓猲鐨勬棩鏈燂紝n涓轟竴鍛ㄤ腑鐨勬煇涓澶┿備絾鏄紝闇瑕佹敞鎰忕殑鏄痭濡傛灉涓哄瓧絎︾殑璇濓紝瀹冪殑鏄熸湡褰㈠紡闇瑕佷笌褰撳墠session榛樿鏃跺尯涓殑鏄熸湡褰㈠紡鐩稿悓銆?
渚嬪錛氫笁鎬濈敤鐨勪腑鏂噉t錛宯ls_language鍊間負SIMPLIFIED CHINESE
SELECT NEXT_DAY(SYSDATE,5) FROM DUAL;
SELECT NEXT_DAY(SYSDATE,'鏄熸湡鍥?) FROM DUAL;
涓ょ鏂瑰紡閮藉彲浠ュ彇鍒版紜殑榪斿洖錛屼絾鏄細
SELECT NEXT_DAY(SYSDATE,'Thursday') FROM DUAL;
鍒欎細鎵ц鍑洪敊錛屾彁渚涗綘璇村懆涓殑鏃ユ棤鏁堬紝灝辨槸榪欎釜鍘熷洜浜嗐?
6銆丮ONTHS_BETWEEN(d1,d2) 榪斿洖d1涓巇2闂寸殑鏈堜喚宸紝瑙哾1,d2鐨勫煎ぇ灝忥紝緇撴灉鍙鍙礋錛屽綋鐒朵篃鏈夊彲鑳戒負0
渚嬪錛?
SELECT months_between(SYSDATE, sysdate),
months_between(SYSDATE, add_months(sysdate, -1)),
months_between(SYSDATE, add_months(sysdate, 1))
FROM DUAL;
7銆丷OUND(d[,fmt]) 鍓嶉潰璁叉暟鍊煎瀷鍑芥暟鐨勬椂鍊欎粙緇嶈繃ROUND錛屾澶勪笌涓婂姛鑳藉熀鏈浉浼鹼紝涓嶈繃姝ゅ鎿嶄綔鐨勬槸鏃ユ湡銆傚鏋滀笉鎸囧畾fmt鍙傛暟錛屽垯榛樿榪斿洖璺濈鎸囧畾鏃ユ湡鏈榪戠殑鏃ユ湡銆?
渚嬪錛歋ELECT ROUND(SYSDATE,'HH24') FROM DUAL;
8銆乀RUNC(d[,fmt]) 涓庡墠闈粙緇嶇殑鏁板煎瀷TRUNC鍘熺悊鐩稿悓錛屼笉榪囨澶勪篃鏄搷浣滅殑鏃ユ湡鍨嬨?
渚嬪錛歋ELECT TRUNC(SYSDATE,'HH24') FROM DUAL;
(浜?.杞崲鍑芥暟(Conversion Functions)
杞崲鍑芥暟灝嗘寚瀹氬瓧絎︿粠涓縐嶇被鍨嬭漿鎹負鍙︿竴縐嶏紝閫氬父榪欑被鍑芥暟閬靛驚濡備笅鎯緥錛氬嚱鏁板悕縐板悗闈㈣窡鐫寰呰漿鎹㈢被鍨嬩互鍙婅緭鍑虹被鍨嬨?
1銆乀O_CHAR() 鏈嚱鏁板張鍙互鍒嗕笁灝忕被錛屽垎鍒槸
杞崲瀛楃->瀛楃TO_CHAR(c)錛氬皢nchar,nvarchar2,clob,nclob綾誨瀷杞崲涓篶har綾誨瀷錛?
渚嬪錛歋ELECT TO_CHAR('AABBCC') FROM DUAL;
杞崲鏃墮棿->瀛楃TO_CHAR(d[,fmt])錛氬皢鎸囧畾鐨勬椂闂?data,timestamp,timestamp with time zone)鎸夌収鎸囧畾鏍煎紡杞崲涓簐archar2綾誨瀷錛?
渚嬪錛歋ELECT TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') FROM DUAL;
杞崲鏁板?>瀛楃TO_CHAR(n[,fmt])錛氬皢鎸囧畾鏁板糿鎸夌収鎸囧畾鏍煎紡fmt杞崲涓簐archar2綾誨瀷騫惰繑鍥烇紱
渚嬪錛歋ELECT TO_CHAR(-100, 'L99G999D99MI') FROM DUAL;
2銆?
TO_DATE(c[,fmt[,nls]])
灝哻har,nchar,varchar2,nvarchar2杞崲涓烘棩鏈熺被鍨嬶紝濡傛灉fmt鍙傛暟涓嶄負絀猴紝鍒欐寜鐓mt涓寚瀹氭牸寮忚繘琛岃漿鎹€傛敞鎰忚繖閲岀殑
fmt鍙傛暟銆傚鏋渇tm涓?J'鍒欒〃紺烘寜鐓у叕鍏冨埗(Julian day)杞崲錛宑鍒欏繀欏諱負澶т簬0騫跺皬浜?373484鐨勬鏁存暟銆?
渚嬪錛?
SELECT TO_DATE(2454336, 'J') FROM DUAL;
SELECT TO_DATE('2007-8-23 23:25:00', 'yyyy-mm-dd hh24:mi:ss') FROM DUAL;
涓轟粈涔堝叕鍏冨埗鐨勮瘽錛宑鐨勫煎繀欏諱笉澶т簬5373484鍛紵鍥犱負Oracle鐨凞ATE綾誨瀷鐨勫彇鍊艱寖鍥存槸鍏厓鍓?712騫?鏈?鏃ヨ嚦鍏厓9999騫?2鏈?1鏃ャ傜湅鐪嬩笅闈㈣繖涓鍙ワ細
SELECT TO_CHAR(TO_DATE('9999-12-31','yyyy-mm-dd'),'j') FROM DUAL;
3銆乀O_NUMBER(c[,fmt[,nls]]) 灝哻har,nchar,varchar2,nvarchar2鍨嬪瓧涓叉寜鐓mt涓寚瀹氭牸寮忚漿鎹負鏁板肩被鍨嬪茍榪斿洖銆?
渚嬪錛歋ELECT TO_NUMBER('-100.00', '9G999D99') FROM DUAL;
(鍏?.鍏跺畠杈呭姪鍑芥暟(Miscellaneous Single-Row Functions)
1銆丏ECODE(exp,s1,r1,s2,r2..s,r[,def]) 鍙互鎶婂畠鐞嗚В鎴愪竴涓寮哄瀷鐨刬f else錛屽彧涓嶈繃瀹冨茍涓嶉氳繃澶氳璇彞錛岃屾槸鍦ㄤ竴涓嚱鏁板唴瀹炵幇if else鐨勫姛鑳姐?
exp鍋氫負鍒濆鍙傛暟銆俿鍋氫負瀵規(guī)瘮鍊鹼紝鐩稿悓鍒欒繑鍥瀝錛屽鏋渟鏈夊涓紝鍒欐寔緇亶鍘嗘墍鏈塻錛岀洿鍒版煇涓潯浠朵負鐪熶負姝紝鍚﹀垯榪斿洖榛樿鍊糳ef(濡傛灉鎸囧畾浜嗙殑璇?錛屽鏋滄病鏈夐粯璁ゅ鹼紝騫朵笖鍓嶉潰鐨勫姣斾篃閮芥病鏈変負鐪燂紝鍒欒繑鍥炵┖銆?
姣棤鐤戦棶錛宒ecode鏄釜闈炲父閲嶈鐨勫嚱鏁幫紝鍦ㄥ疄鐜拌杞垪絳夊姛鑳芥椂閮戒細鐢ㄥ埌錛岄渶瑕佺墷璁板拰鐔熺粌浣跨敤銆?
渚嬪錛歴elect decode('a2','a1','true1','a2','true2','default') from dual;
2銆丟REATEST(n1,n2,...n) 榪斿洖搴忓垪涓殑鏈澶у?
渚嬪錛歋ELECT GREATEST(15,5,75,8) "Greatest" FROM DUAL;
3銆丩EAST(n1,n2....n) 榪斿洖搴忓垪涓殑鏈灝忓?
渚嬪錛歋ELECT LEAST(15,5,75,8) LEAST FROM DUAL;
4銆丯ULLIF(c1,c2)
Nullif涔熸槸涓緢鏈夋剰鎬濈殑鍑芥暟銆傞昏緫絳変環(huán)浜庯細CASE WHEN c1 = c2 THEN NULL ELSE c1 END
渚嬪錛歋ELECT NULLIF('a','b'),NULLIF('a','a') FROM DUAL;
5銆丯VL(c1,c2) 閫昏緫絳変環(huán)浜嶪F c1 is null THEN c2 ELSE c1 END銆俢1,c2鍙互鏄換浣曠被鍨嬨傚鏋滀袱鑰呯被鍨嬩笉鍚岋紝鍒檕racle浼氳嚜鍔ㄥ皢c2杞崲涓篶1鐨勭被鍨嬨?
渚嬪錛歋ELECT NVL(null, '12') FROM DUAL;
6銆丯VL2(c1,c2,c3) 澶у鍙兘閮界敤鍒皀vl錛屼絾浣犵敤榪噉vl2鍚楋紵濡傛灉c1闈炵┖鍒欒繑鍥瀋2,濡傛灉c1涓虹┖鍒欒繑鍥瀋3
渚嬪錛歴elect nvl2('a', 'b', 'c') isNull,nvl2(null, 'b', 'c') isNotNull from dual;
7銆丼YS_CONNECT_BY_PATH(col,c) 璇ュ嚱鏁板彧鑳藉簲鐢ㄤ簬鏍?wèi)鐘舵煡璇€傝繑鍥為氳繃c1榪炴帴鐨勪粠鏍瑰埌鑺傜偣鐨勮礬寰勩傝鍑芥暟蹇呴』涓巆onnect by 瀛愬彞鍏卞悓浣跨敤銆?
渚嬪錛?
create table tmp3(
rootcol varchar2(10),
nodecol varchar2(10)
);
insert into tmp3 values ('','a001');
insert into tmp3 values ('','b001');
insert into tmp3 values ('a001','a002');
insert into tmp3 values ('a002','a004');
insert into tmp3 values ('a001','a003');
insert into tmp3 values ('a003','a005');
insert into tmp3 values ('a005','a008');
insert into tmp3 values ('b001','b003');
insert into tmp3 values ('b003','b005');
select lpad(' ', level*10,'=') ||'>'|| sys_connect_by_path(nodecol,'/')
from tmp3
start with rootcol = 'a001'
connect by prior nodecol =rootcol;
8銆丼YS_CONTEXT(c1,c2[,n]) 灝嗘寚瀹氬懡鍚嶇┖闂碿1鐨勬寚瀹氬弬鏁癱2鐨勫兼寜鐓ф寚瀹氶暱搴鎴彇鍚庤繑鍥炪?
Oracle9i鎻愪緵鍐呯疆浜嗕竴涓懡鍚嶇┖闂碪SERENV錛屾弿榪頒簡褰撳墠session鐨勫悇欏逛俊鎭紝鍏舵嫢鏈変笅鍒楀弬鏁幫細
飦?CURRENT_SCHEMA:褰撳墠妯″紡鍚嶏紱
飦?CURRENT_USER:褰撳墠鐢ㄦ埛錛?
飦?IP_ADDRESS:褰撳墠瀹㈡埛绔疘P鍦板潃錛?
飦?OS_USER:褰撳墠瀹㈡埛绔?a title="鎿嶄綔緋葷粺" target="_blank" style="color: #000000;">鎿嶄綔緋葷粺鐢ㄦ埛錛?
絳夌瓑鏁板崄欏癸紝鏇磋緇嗙殑鍙傛暟鍒楄繕璇峰ぇ瀹剁洿鎺ュ弬鑰僌racle Online Documents
渚嬪錛歋ELECT SYS_CONTEXT('USERENV', 'SESSION_USER') FROM DUAL;
娉細N琛ㄧず鏁板瓧鍨嬶紝C琛ㄧず瀛楃鍨嬶紝D琛ㄧず鏃ユ湡鍨嬶紝[]琛ㄧず鍐呬腑鍙傛暟鍙蹇界暐錛宖mt琛ㄧず鏍煎紡銆?
鍗曞煎嚱鏁板湪鏌ヨ涓繑鍥炲崟涓鹼紝鍙搴旂敤鍒皊elect錛寃here瀛愬彞錛宻tart with浠ュ強connect by 瀛愬彞鍜宧aving瀛愬彞銆?
(涓).鏁板煎瀷鍑芥暟(Number Functions)
鏁?
鍊煎瀷鍑芥暟杈撳叆鏁板瓧鍨嬪弬鏁板茍榪斿洖鏁板煎瀷鐨勫箋傚鏁拌綾誨嚱鏁扮殑榪斿洖鍊兼敮鎸?8浣嶅皬鏁扮偣錛岃濡傦細COS, COSH, EXP, LN, LOG, SIN,
SINH, SQRT, TAN, and TANH 鏀寔36浣嶅皬鏁扮偣銆侫COS, ASIN, ATAN, and ATAN2鏀寔30浣嶅皬鏁扮偣銆?
1銆丄BS(n) 榪斿洖鏁板瓧鐨勭粷瀵瑰?
渚嬪錛歋ELECT ABS(-1000000.01) FROM DUAL;
2銆丆OS(n) 榪斿洖n鐨勪綑寮﹀?
渚嬪錛歋ELECT COS(-2) FROM DUAL;
3銆丄COS(n) 鍙嶄綑寮﹀嚱鏁幫紝n between -1 and 1錛岃繑鍥炲糱etween 0 and pi銆?
渚嬪錛歋ELECT ACOS(0.9) FROM DUAL;
4銆丅ITAND(n1,n2) 浣嶄笌榪愮畻錛岃繖涓お鏈夋剰鎬濅簡錛岃櫧鐒舵病鎯沖埌鍙兘鐢ㄥ埌鍝噷錛岃緇嗚鏄庝竴涓嬶細
鍋囪3,9鍋氫綅涓庤繍綆楋紝3鐨勪簩榪涘埗褰㈠紡涓猴細0011錛?鐨勪簩榪涘埗褰㈠紡涓猴細1001錛屽垯緇撴灉鏄?001錛岃漿鎹㈡垚10榪涘埗鏁頒負1銆?
渚嬪錛歋ELECT BITAND(3,9) FROM DUAL;
5銆丆EIL(n) 榪斿洖澶т簬鎴栫瓑浜巒鐨勬渶灝忕殑鏁存暟鍊?
渚嬪錛歋ELECT ceil(18.2) FROM DUAL;
鑰冧綘涓涓嬶紝鐚滅寽ceil(-18.2)鐨勫間細鏄粈涔堝憿
6銆丗LOOR(n) 榪斿洖灝忎簬絳変簬n鐨勬渶澶ф暣鏁板?
渚嬪錛歋ELECT FLOOR(2.2) FROM DUAL;
鍐嶇寽鐚渇loor(-2.2)鐨勫間細鏄粈涔堝憿
7銆丅IN_TO_NUM(n1,n2,....n) 浜岃繘鍒惰漿鍚戝崄榪涘埗
渚嬪錛歋ELECT BIN_TO_NUM(1),BIN_TO_NUM(1,0),BIN_TO_NUM(1,1) FROM DUAL;
8銆丼IN(n) 榪斿洖n鐨勬鐜勫?n涓哄姬搴︺?
渚嬪錛歋ELECT SIN(10) FROM DUAL;
9銆丼INH(n) 榪斿洖n鐨勫弻鏇叉鐜勫?n涓哄姬搴︺?
渚嬪錛歋ELECT SINH(10) FROM DUAL;
10銆丄SIN(n) 鍙嶆鐜勫嚱鏁幫紝n between -1 and 1錛岃繑鍥炲糱etween pi/2 and -pi/2銆?
渚嬪錛歋ELECT ASIN(0.8) FROM DUAL;
11銆乀AN(n) 榪斿洖n鐨勬鍒囧?n涓哄姬搴?
渚嬪錛歋ELECT TAN(0.8) FROM DUAL;
12銆乀ANH(n) 榪斿洖n鐨勫弻鏇叉鍒囧?n涓哄姬搴?
渚嬪錛歋ELECT TANH(0.8) FROM DUAL;
13銆丄TAN(n) 鍙嶆鍒囧嚱鏁幫紝n琛ㄧず寮у害錛岃繑鍥炲糱etween pi/2 and -pi/2銆?
渚嬪錛歋ELECT ATAN(-444444.9999999) FROM DUAL;
14銆丒XP(n) 榪斿洖e鐨刵嬈″箓錛宔 = 2.71828183 ...
渚嬪錛歋ELECT EXP(3) FROM DUAL;
15銆丩N(n) 榪斿洖n鐨勮嚜鐒跺鏁幫紝n>0
渚嬪錛歋ELECT LN(0.9) FROM DUAL;
16銆丩OG(n1,n2) 榪斿洖浠1涓哄簳n2鐨勫鏁幫紝n1 >0 and not 1 錛宯2>0
渚嬪錛歋ELECT LOG(1.1,2.2) FROM DUAL;
17銆丳OWER(n1,n2) 榪斿洖n1鐨刵2嬈℃柟銆俷1,n2鍙互涓轟換鎰忔暟鍊鹼紝涓嶈繃濡傛灉m鏄礋鏁幫紝鍒檔蹇呴』涓烘暣鏁?
渚嬪錛歋ELECT POWER(2.2,2.2) FROM DUAL;
18銆丼IGN(n) 濡傛灉n<0榪斿洖-1,濡傛灉n>0榪斿洖1錛屽鏋渘=0榪斿洖0.
渚嬪錛歋ELECT SIGN(14),SIGN(-14),SIGN(0) FROM DUAL;
19銆丼QRT(n) 榪斿洖n鐨勫鉤鏂規(guī)牴,n涓哄姬搴︺俷>=0
渚嬪錛歋ELECT SQRT(0.1) FROM DUAL;
(浜?.瀛楃鍨嬪嚱鏁拌繑鍥炲瓧絎﹀?Character Functions Returning Character Values)
璇ョ被鍑芥暟榪斿洖涓庤緭鍏ョ被鍨嬬浉鍚岀殑綾誨瀷銆?
飦?榪斿洖鐨凜HAR綾誨瀷鍊奸暱搴︿笉瓚呰繃2000瀛楄妭錛?
飦?榪斿洖鐨刅CHAR2綾誨瀷鍊奸暱搴︿笉瓚呰繃4000瀛楄妭錛?
濡傛灉涓婅堪搴旇繑鍥炵殑瀛楃闀垮害瓚呭嚭錛宱racle騫朵笉浼氭姤閿欒屾槸鐩存帴鎴柇鑷蟲渶澶у彲鏀寔闀垮害榪斿洖銆?
飦?榪斿洖鐨凜LOB綾誨瀷鍊奸暱搴︿笉瓚呰繃4G錛?
瀵逛簬CLOB綾誨瀷鐨勫嚱鏁幫紝濡傛灉榪斿洖鍊奸暱搴﹁秴鍑猴紝oracle涓嶄細榪斿洖浠諱綍閿欒鑰屾槸鐩存帴鎶涘嚭閿欒銆?
1銆丆HR(N[ USING NCHAR_CS]) 榪斿洖鎸囧畾鏁板煎湪褰撳墠瀛楃闆嗕腑瀵瑰簲鐨勫瓧絎?
渚嬪錛歋ELECT CHR(95) FROM DUAL;
2銆丆ONCAT(c1,c2) 榪炴帴瀛楃涓詫紝絳夊悓浜巪|
渚嬪錛歋ELECT concat('aa','bb') FROM DUAL;
3銆両NITCAP(c) 灝嗗瓧絎︿覆涓崟璇嶇殑絎竴涓瓧姣嶈漿鎹負澶у啓錛屽叾瀹冨垯杞崲涓哄皬鍐?
渚嬪錛歋ELECT INITCAP('whaT is this') FROM DUAL;
4銆丯LS_INITCAP(c) 榪斿洖鎸囧畾瀛楃涓詫紝騫跺皢瀛楃涓蹭腑絎竴涓瓧姣嶅彉澶у啓錛屽叾瀹冨瓧姣嶅彉灝忓啓
渚嬪錛歋ELECT NLS_INITCAP('涓崕miNZHu') FROM DUAL;
瀹冭繕鍏鋒湁涓涓弬鏁幫細Nlsparam鐢ㄦ潵鎸囧畾鎺掑簭瑙勫垯錛屽彲浠ュ拷鐣ワ紝榛樿鐘舵佽鍙傛暟涓哄綋鍓峴ession鐨勬帓搴忚鍒欍?
(涓?.瀛楃鍨嬪嚱鏁拌繑鍥炴暟瀛楀?Character Functions Returning Number Values)
鏈被鍑芥暟鏀寔鎵鏈夌殑鏁版嵁綾誨瀷
1銆丄SCII(c) 涓巆hr鍑芥暟鐨勭敤閫斿垰鍒氱浉鍙嶏紝鏈嚱鏁拌繑鍥炴寚瀹氬瓧絎﹀湪褰撳墠瀛楃闆嗕笅瀵瑰簲鐨勬暟鍊箋?
渚嬪錛歋ELECT ASCII('_') FROM DUAL;
(鍥?.鏃ユ湡鍑芥暟(Datetime Functions)
鏈被鍑芥暟涓紝闄onths_between榪斿洖鏁板煎錛屽叾瀹冮兘灝嗚繑鍥炴棩鏈熴?
1銆丆URRENT_TIMESTAMP([n]) 榪斿洖褰撳墠session鎵鍦ㄦ椂鍖虹殑鏃ユ湡鍜屾椂闂淬俷琛ㄧず姣綰х殑綺懼害錛屼笉澶т簬6
渚嬪錛歋ELECT CURRENT_TIMESTAMP(3) FROM DUAL;
2銆丩OCALTIMESTAMP([n]) 涓庝笂鍚岋紝榪斿洖褰撳墠session鎵鍦ㄦ椂鍖虹殑鏃ユ湡鍜屾椂闂淬俷琛ㄧず姣綰х殑綺懼害錛屼笉澶т簬6
渚嬪錛歋ELECT LOCALTIMESTAMP(3) FROM DUAL;
3銆丼YSTIMESTAMP([n]) 涓庝笂鍚岋紝榪斿洖褰撳墠鏁版嵁搴撴墍鍦ㄦ椂鍖虹殑鏃ユ湡鍜屾椂闂達紝n琛ㄧず姣綰х殑綺懼害錛?gt;0 and <6
渚嬪錛歋ELECT SYSTIMESTAMP(4) FROM DUAL;
4銆丏BTIMEZONE 榪斿洖鏁版嵁搴撶殑褰撳墠鏃跺尯
渚嬪錛歋ELECT DBTIMEZONE FROM DUAL;
5銆丼ESSIONTIMEZONE 榪斿洖褰撳墠session鎵鍦ㄦ椂鍖?
渚嬪錛歋ELECT SESSIONTIMEZONE FROM DUAL;
6銆丒XTRACT(key from date) key=(year,month,day,hour,minute,second) 浠庢寚瀹氭椂闂存彁鍒版寚瀹氭棩鏈熷垪
渚嬪錛歋ELECT EXTRACT(year from sysdate) FROM DUAL;
7銆乀O_TIMESTAMP(c1[,fmt]) 灝嗘寚瀹氬瓧絎︽寜鎸囧畾鏍煎紡杞崲涓簍imestamp鏍煎紡銆?
渚嬪錛歋ELECT TO_TIMESTAMP('2007-8-22', 'YYYY-MM-DD HH:MI:SS') FROM DUAL;
(浜?.杞崲鍑芥暟(Conversion Functions)
杞崲鍑芥暟灝嗘寚瀹氬瓧絎︿粠涓縐嶇被鍨嬭漿鎹負鍙︿竴縐嶏紝閫氬父榪欑被鍑芥暟閬靛驚濡備笅鎯緥錛氬嚱鏁板悕縐板悗闈㈣窡鐫寰呰漿鎹㈢被鍨嬩互鍙婅緭鍑虹被鍨嬨?
1銆丅IN_TO_NUM(n1,n2...n) 灝嗕竴緇勪綅鍚戦噺杞崲涓虹瓑浠風(fēng)殑鍗佽繘鍒跺艦寮忋?
渚嬪錛歋ELECT BIN_TO_NUM(1,1,0) FROM DUAL;
2銆丆AST(c as newtype) 灝嗘寚瀹氬瓧涓茶漿鎹負鎸囧畾綾誨瀷錛屽熀鏈彧瀵瑰瓧絎︾被鍨嬫湁鏁堬紝姣斿char,number,date,rowid絳夈傛綾昏漿鎹㈡湁涓涓笓闂ㄧ殑琛ㄥ垪鏄庝簡鍝綾誨瀷鍙互杞崲涓哄摢縐嶇被鍨嬶紝姝ゅ灝變笉浣滈吂榪般?
渚嬪錛歋ELECT CAST('1101' AS NUMBER(5)) FROM DUAL;
3銆丆HARTOROWID(c) 灝嗗瓧絎︿覆杞崲涓簉owid綾誨瀷
渚嬪錛歋ELECT CHARTOROWID('A003D1ABBEFAABSAA0') FROM DUAL;
4銆丷OWIDTOCHAR(rowid) 杞崲rowid鍊間負varchar2綾誨瀷銆傝繑鍥炰覆闀垮害涓?8涓瓧鑺傘?
渚嬪錛歋ELECT ROWIDTOCHAR(rowid) FROM DUAL;
5銆乀O_MULTI_BYTE(c) 灝嗘寚瀹氬瓧絎﹁漿鎹負鍏ㄨ騫惰繑鍥瀋har綾誨瀷瀛椾覆
渚嬪錛歋ELECT TO_MULTI_BYTE('ABC abc銆涓崕') FROM DUAL;
6銆乀O_SINGLE_BYTE(c) 灝嗘寚瀹氬瓧絎﹁漿鎹負鍗婅騫惰繑鍥瀋har綾誨瀷瀛椾覆
渚嬪錛歋ELECT TO_SINGLE_BYTE('錛★饑錛c锝侊絺锝冧腑鍗?) FROM DUAL;
(鍏?.鍏跺畠杈呭姪鍑芥暟(Miscellaneous Single-Row Functions)
1銆丆OALESCE(n1,n2,....n) 榪斿洖搴忓垪涓殑絎竴涓潪絀哄?
渚嬪錛歋ELECT COALESCE(null,5,6,null,9) FROM DUAL;
2銆丏UMP(exp[,fmt[,start[,length]]])
dump鏄釜鍔熻兘闈炲父寮烘?zhèn)嶇殑鍑芥晭图屽浜庢繁鍏ヤ簡瑙racle瀛樺偍鐨勪漢鑰岃█鐩稿綋鏈夌敤銆傛墍浠ュ浜庢垜浠繖浜涗粎浠呭彧鏄簲鐢ㄧ殑浜鴻岃█灝變笉鐭ラ亾鑳藉皢鍏跺簲鐢ㄤ簬浣曞浜嗐傛澶勪粎浠嬬粛鐢ㄦ硶錛屼笉瀵瑰叾鍔熻兘鍋氭繁鍏ュ垎鏋愩?br />
濡備笂鎵紺猴紝dump鎷ユ湁涓嶅皯鍙傛暟銆傚叾鏈川鏄互鎸囧畾鏍煎紡錛岃繑鍥炴寚瀹氶暱搴︾殑exp鐨勫唴閮ㄨ〃紺哄艦寮忕殑varchar2鍊箋俧mt鍚?縐嶆牸
寮忥細8||10||16||17錛屽垎鍒〃紺?榪涘埗錛?0榪涘埗錛?6榪涘埗鍜屽崟瀛楃錛岄粯璁や負10榪涘埗銆俿tart鍙傛暟琛ㄧず寮濮嬩綅緗紝length琛ㄧず浠?鍒嗛殧
鐨勫瓧涓叉暟銆?
渚嬪錛歋ELECT DUMP('abcdefg',17,2,4) FROM DUAL;
3銆丒MPTY_BLOB,EMPTY_CLOB 榪欎袱涓嚱鏁伴兘鏄繑鍥炵┖lob綾誨瀷錛岄氬父琚敤浜巌nsert鍜寀pdate絳夎鍙ヤ互鍒濆鍖杔ob鍒楋紝鎴栬呭皢鍏剁疆涓虹┖銆侲MPTY琛ㄧずLOB宸茬粡琚垵濮嬪寲錛屽彧涓嶈繃榪樻病鏈夌敤鏉ュ瓨鍌ㄦ暟鎹?
4銆丯LS_CHARSET_NAME(n) 榪斿洖鎸囧畾鏁板煎搴旂殑瀛楃闆嗗悕縐般?
渚嬪錛歋ELECT NLS_CHARSET_NAME(1) FROM DUAL;
5銆丯LS_CHARSET_ID(c) 榪斿洖鎸囧畾瀛楃瀵瑰簲鐨勫瓧絎﹂泦id銆?
渚嬪錛歋ELECT NLS_CHARSET_ID('US7ASCII') FROM DUAL;
6銆丯LS_CHARSET_DECL_LEN(n1,n2) 榪斿洖涓涓狽CHAR鍊肩殑澹版槑瀹藉害(浠ュ瓧絎︿負鍗曚綅).n1鏄鍊間互瀛楄妭涓哄崟浣嶇殑闀垮害錛宯2鏄鍊肩殑瀛楃闆咺D
渚嬪錛歋ELECT NLS_CHARSET_DECL_LEN(100, nls_charset_id('US7ASCII')) FROM DUAL;
7銆丼YS_EXTRACT_UTC(timestamp) 榪斿洖鏍囧噯閫氱敤鏃墮棿鍗蟲牸鏋楀▉娌繪椂闂淬?
渚嬪錛歋ELECT SYS_EXTRACT_UTC(current_timestamp) FROM DUAL;
8銆丼YS_TYPEID(object_type) 榪斿洖瀵硅薄綾誨瀷瀵瑰簲鐨刬d銆?
渚嬪錛氳繖涓繖涓紝娌℃湁寤虹珛榪囪嚜瀹氫箟瀵硅薄錛屽拫鍋氱ず渚嬶紵
9銆乁ID 榪斿洖涓涓敮涓鏍囪瘑褰撳墠鏁版嵁搴撶敤鎴風(fēng)殑鏁存暟銆?
渚嬪錛歋ELECT UID FROM DUAL;
10銆乁SER 榪斿洖褰撳墠session鐢ㄦ埛
渚嬪錛歋ELECT USER FROM DUAL;
11銆乁SERENV(c) 璇ュ嚱鏁扮敤鏉ヨ繑鍥炲綋鍓峴ession鐨勪俊鎭紝鎹畂racle鏂囨。鐨勮鏄庯紝userenv鏄負浜嗕繚鎸佸悜涓嬪吋瀹圭殑閬楃暀鍑芥暟銆俹racle鍏徃鎺ㄨ崘浣犱嬌鐢╯ys_context鍑芥暟璋冪敤USERENV鍛藉悕絀洪棿鏉ヨ幏鍙栫浉鍏充俊鎭紝鎵浠ュぇ瀹朵簡瑙d笅灝辮浜嗐?
渚嬪錛歋ELECT USERENV('LANGUAGE') FROM DUAL;
12銆乂SIZE(c) 榪斿洖c鐨勫瓧鑺傛暟銆?
渚嬪錛歋ELECT VSIZE('abc涓崕') FROM DUAL;