程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle 基礎知識中單行函數裡六個主要項目

Oracle 基礎知識中單行函數裡六個主要項目

編輯:Oracle數據庫基礎

Oracle 基礎知識中的單行函數中包括六個主要項目,其中包括數字函數的相關介紹,字符函數的實際應用以及日期函數等相關內容的介紹,以下就是Oracle 基礎知識中的單行函數的其他項目的介紹。   

1. 數字函數

ABS 取絕對值 POWER 乘方 LN 10為底數取0

SQRT 平方根 EXP e的n次乘方 LOG(m,n) m為底數n取0

數學運算函數:ACOS ATAN ATAN2 COS COSH SIGN SIN SINH TAN TANH

CEIL 大於或等於取整數

FLOOR 小於或等於取整數

MOD 取余數

ROUND(n,m) 按m的位數取四捨五入值如果round(日期): 中午12以後將是明天的日期.

round(sysdate,'Y')是年的第一天

TRUNC(n,m) 按m的位數取小數點後的數值如果trunc(日期), 確省的是去掉時間

6

J2EE @ zxw

2. 字符函數

CHR 按數據庫的字符集由數字返回字符

CONCAT(c1,c2) 把兩個字符c1,c2組合成一個字符, 和 || 相同

REPLACE(c,s,r) 把字符c裡出現s的字符替換成r, 返回新字符

SUBSTR(c,m,n) m大於0,字符c從前面m處開始取n位字符,m等於0和1一樣,

m小與0,字符c從後面m處開始取n位字符

TRANSLATE(c,f1,t1) 字符c按f1到t1的規則轉換成新的字符串

INITCAP 字符首字母大寫,其它字符小寫

LOWER 字符全部小寫

UPPER 字符全部大寫

LTRIM(c1,c2) 去掉字符c1左邊出現的字符c2

RTRIM(c1,c2)

TRIM(c1,c2) 去掉字符c1左右兩邊的字符c2

LPAD(c1,n,c2) 字符c1按制定的位數n顯示不足的位數用c2字符串替換左邊的空位

RPAD(c1,n,c2)

3. 日期函數

ADD_MONTHS(d,n) 日期值加n月

LAST_DAY 返回當月的最後一天的日期

MONTHS_BETWEEN(d1,d2) 兩個日期值間的月份,d1<d2 返回負數

NEXT_DAY 返回日期值下一天的日期

SYSDATE 當前的系統時間

DUAL是SYS用戶下一個空表,它只有一個字段dummy

4. 轉換函數(1)

TO_CHAR(date,'日期顯示格式')

TO_CHAR(number) 用於顯示或報表的格式對齊

TO_DATE(char,'日期顯示格式')

TO_LOB 把long字段轉換成lob字段

TO_NUMBER(char) 用於計算或者比較大小

轉換函數(2)

to_date裡日期顯示格式

YYYY 年 YEAR YYY YY Y

Q 季度

MM 月 MONTH MON

W 星期 (week of month) WW, IW (week of year)

(說明:周計是按ISO標准,從1月1日的星期數到後面七天為一周,不一定是從周一到周日)

DD 日 DAY DY

HH24 小時 HH12 HH

MI 分鐘

SS 秒

如果想固定日期的顯示格式可以在數據庫的參數文件initorasid.ora裡新寫一行參數

NLS_DATE_FORMAT=yyyy-mm-dd

hh24:mi:ss可以在UNIX環境變量或者NT的注冊表裡的設置 NLS_DATE_FORMAT=yyyy-mm-dd

7

J2EE @ zxw

hh24:mi:ss

轉換函數(3)

如果想固定日期的顯示格式可以用alter session命令改變

SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

它的作用順序如下:

initialization parameter

Environment variable

ALTER SESSION command

轉換函數 (4)

to_char(number)裡數字顯示格式

9 數字位

0 數字前面補0 to_char(-1200,'00000.00')

小數點的位置

標記位置的逗號 用在數字顯示格式的左邊

L 根據數據庫字符集加貨幣符號 to_char(-1200,'L9999.99')

B 把數字0顯示為空格,用在數字顯示格式的右邊

MI 右邊的負數標記 to_char(-1200,'9999.99MI')

PR 括起來的負數 to_char(-1200,'9999.99PR')

EEEE 用指數方式表示 to_char(-1200,'9999.99EEEE')

5. 輸入字符,返回數字的函數

instr(c1,c2) 字符c2出現在c1的位置, 不出現, 返回0, 常用於模糊查詢

length 按數據庫的字符集,算出字符c的長度,跟數據庫的字符集有關, 一個漢字長度為1

6. 有邏輯比較的函數NVL(EXPR1, EXPR2)函數

解釋: IF EXPR1=NULL RETURN EXPR2

ELSE RETURN EXPR1

DECODE(AA0V10R10V20R2....)函數

解釋: IF AA=V1 THEN RETURN R1

IF AA=V2 THEN RETURN R2

..…

ELSE

RETURN NULL

舉例: decode(id,1,'dept sale',2,'dept tech')

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved