2007年10月16日 星期二

[PL/SQL] PL/SQL函數說明

以前收集的PL/SQL函數說明,覺得還不錯,給大家參考參考

PL/SQL函數指令

說明

ABS(n)

絕對值

ACOS(O)

逆三角餘弦值

ADD_MONTHS(dn)

傳回d值加n個月

ASCII(n)

Ascii字元傳回十進位值

ATAN(n)

逆三角正切值(徑,p/2 ~ -p/2)

ATAN2(mn)

逆三角正切值(徑,p ~ -p)

AVG(n)

傳回平均值

BFILENAME(mn)

傳回外部檔案值,m=目錄字串,

n=檔案字串

CEIL(n)

無條件進位的整數

CHARTOROWID

將字元型態轉為ROWID型態

CHR(n)

Chr十進位值,傳回ascii

CONCAT(mn)

不論文字或數字相加,都以字串相

加方式

CONVERT(m,n,z)

將字串轉換另一國家字元設定值

COS(n)

傳回n的餘弦值

COSH(n)

傳回n的雙曲線餘弦值

COUNT(n)

傳回總筆數

DECODE

(C nv1r1v2r2d1)=v2

變數c字串或n數字,=v1則值=r1,則值=v2,或=dl

DUMP(mnn1n2)

傳回m的長度及內碼,n=進位數(預設值=10進位)n1=m的開始位置,n2=取的位無數

EMPTY_[B C] LOB()

BLOBCLOB初始化,就是傳回BLOBCLOB的空指標

EXP(n)

傳回自然對數en次方值

FLOOR(n)

無條件捨去的整數

GREATEST(m)

m可為數字或文字,傳回最大值

GROUPING(n)

傳回群集

HEXTORAW(m)

將十六進位轉換為原始值

INITCAP(n)

傳回字句一個字為大寫

INSTR(char1, char2 [m[n]] )

char1中從m位置起char2n次出現的位置

INSTR(mn)

傳回n字串在m字串中的位置

INSTRB(mn)

byte傳回n字串在m字串中的位置

LAST_DAY(d)

傳回該月的最後一天的日期

LEAST(m1m2m3...mn)

m可為數字或文字,傳回最小值

LENGTH(n)

傳回字串的長度

LENGTHB(n)

byte方式傳回字串的長度

LN(n)

自然對數

LOG(m , n)

m進位的n對數

LOWER

傳回每一字為小寫

LPAD(m , n , z)

n1ength(m)z字元數填入m的左邊

LTRIM(n)

去除字串左邊的空格字元

MAX(n)

傳回最大值

MIN(n)

傳回最小值

MOD(m , n)

m/n整數的餘數

MONTHS_BETWEEN(mn)

傳回m - n的值,單位月(日期相減

單位為日)

NEW_TIME(m , n , z)

n時區的日期、時間是m,傳回在

z時區的日期時間

NEXT_DAY(m , n)

下一個星期n(1-7=sun-sat)是那一天

NLS_CHARSET_DECL_LEN(M , N)

傳回所要的字體組對應當前資料庫

的字體組,m=字體數;n=字體組(:'ZHT16BIG5')

NLS_CHARSET_ID(m)

傳回字體組的識別碼,m=字體組

NLS_CHARSET_NAME(n)

傳回字體組,n=字體組的識別碼

NLS_INITCAP(m [,N])

傳回字句一個字為大寫(依照國家

語言不同)

NLS_LOWER

傳回每一字為小寫(依照國家語言

不同)

NLS_UPPER

傳回每一字為大寫(依照國家語言

不同)

NLSSORT

決定排列順序(依照國家語言不同)

NVL(mn)

mNULL則傳回n值,否則傳回

m

NVL2(m , n , z)

POWER(m , n)

傳回mn次方

RAWTOHEX(m)

將原始值(例如A=65)進位轉換為

十六進位

REPLACE(m , n [, z] )

M字串中去除n字串以z字串取代

ROUND(d)

日期四捨五入以中午為中點

ROUND(m [, n])

算數m四捨五入,取到小數點第n

[n default=0]

ROWIDTOCHAR(m)

ROWID型態轉為字元型態

RPAD(m , n , z)

n1ength(m)z字元數填入m的右邊

RTRIM(n)

去除字串右邊的空格字元

SIGN(n)

信號的傳回,n<0-1n=00n>0 1

SIN(n)

傳回n的正弦值

SINH(n)

傳回n的雙曲線的正弦值

SOUNDEX(m)

傳回以字串m的聲音(可做文字發音比對)

SQRT(n)

傳回n開平方根的值

STDDEV(n)

傳回標準差

SUBSTR(m , n , z)

m字串中從頭n數位開始取,取z

個字元

SUBSTRB(m , n , z)

byte方式m字串中從頭n數位開始取,取z個字元

SUM(n)

傳回加總

SYS_CONTEXT(m , n)

傳回與某一個context名稱關聯的Package spec定義的變數的值,m=context的名稱,n=變數名稱

SYS_GUID()

傳回全球獨一無二的識別碼

SYSDATE

傳回系統日期

TAN(n)

傳回n的正切值

TANH

傳回n的雙曲線的正切值

TO_CHAR(dt)

將日期格武轉換為文字格式,d=日期,t=日期型態格武

TO_CHAR(n)

將數字格式轉換為文字格式

TO_DATE(m , t)

將文字格式轉換為日期格式,m=字串,t=日期型態格式

TO_LOB(m)

LONG的資料型態轉換成LOB的資料型態

TO_MULTI_BYTE(m)

CHAR的資料型態轉換成多位元的字體

TO_NUMBER(m)

將字串轉成數字

TO_SINGLE_BYTE(m)

將多位元的字體轉換成CHAR的字體

TRANSLATE(m using n)

Char轉咸nchar

TRANSLATE(m , n [,z])

n字串尋找m字串,以z字串取代

TRIM(n)

去除字串左、右邊的空格字元

TRUNC(d [, n])

d截斷到n[n default=NULL()]n='month'截斷到月

TRUNC(m [, n])

m截斷到n[n default=0]n=-1則截斷個位為0

UID(m)

傳回目前的使用者的唯一識別碼

UPPER(n)

傳回每一字為大寫

USER

傳回使用者名稱

USERENV(m)

傳回使用者環境參數的資訊

VARIANCE(n)

傳回變異量

VSIZE(m)

傳回字串的bytes

1 則留言:

匿名 提到...

謝謝你提供的資料...
讓我們免除了尋找的時間...