程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> Oracl常用e函數整理,oracle函數

Oracl常用e函數整理,oracle函數

編輯:Oracle教程

Oracl常用e函數整理,oracle函數


最近學Oracle數據庫,常常遇到Oracle數據庫函數問題,經過默默地琢磨處理,總結了一些Oracle數據庫常用函數。

 

------------------------------------ ---->oracle常用基本函數(附例子)<---- ------------------------------------

------------------------ ---->常用的字符函數<---- ------------------------

--initap()單詞首字母大寫  人名  地名 select initcap ('z慶l love') from dual

--lower() 字母全轉為小寫 select lower('Zq L') from dual

--upper() 字母全轉為小寫 select upper('zQ l') fro m dual

--ltrim() 左裁剪 必須從第一個開始匹配 直到匹配完成  才能截取成功 select ltrim('人生真是寂寞如雪啊','真') from dual

--rtrim() 右裁剪 同左裁剪 select rtrim('人生真是寂寞如雪啊','啊') from dual

--translate() 按字符翻譯 select translate('zadqlf','abfd','愛國向上') from dual

--replace() 字符串替換 select replace('人生這是寂寞如雪啊','這是','嘎嘎嘎') from dual

--instr() 查找子串的位置 select instr('人生真是寂寞如雪啊','如雪') from dual

--substr() 取子字符串 select substr('人生這是寂寞如雪啊',1,4) from dual

--concat() 連接字符串 select concat('My','Love') from dual

---------------------- ---->常用數字函數<---- ----------------------

--abs()取絕對值 select abs(-15) from dual

--ceil()向上取整  去掉小數部分  正數+1  負數+0 select ceil(-1.1) 負數,ceil(1.1) 正數 from dual

----floor() 向下取整 等於去掉小數部分 正數-0  負數-1 select floor(-1.1) 負數,floor(1.1) 正數 from dual

--sin()正弦 三角形對邊和斜邊的比---->不常用<---- select sin(1.5) from dual

--cos() 余弦 三角形鄰邊與斜邊的比 ---->不常用<---- select cos(1.5) from dual

--sign() 取符號 select sign(-32) 負號,sign(32) 正號 from dual

--power(m,n) m的n次方 select power(3,3) from dual

--sqrt() 平方根 獲取數字的平方根  ---->不常用<---- select sqrt(4) from dual

--mod() 取余數 類似於 java中% select mod(7,2) from dual

--round(m,n) 四捨五入 m->操作數  n->精確到小數後幾位 select round(1.116,2) from dual

--trunc() 截斷 m->操作數 n->保留小數後幾位 select trunc(1.116,2) from dual

---------------------- ---->常用日期函數<---- ----------------------

--months_between() 返回兩個日期之間相差的月份 參數需是date型 select months_between(date'04-11-05',date'11-1-01') from dual

--add_months() 給日期添加月份 第一個參數需是date select add_months(date'2015-2-14',1) from dual

--next_day() 返回指定日期  後某個星期對應的天數  第二個星期參數需是英文 select next_day(date'2015-5-6','monday') from dual

--round() 按指定格式對日期進行"四捨五入"  這裡需要注意時間的轉化  以及四捨五入的范圍 ---->不常用<---- select round(to_date('2012-2-03','yyyy-mm-dd'),'year') from dual; select round(to_date('2012-2-17','yyyy-mm-dd'),'month') from dual; select round(to_date('2012-2-03','yyyy-mm-dd'),'day') from dual;

--trunc() 對日期按指定的方式進行截斷  類似小數的截斷  參照一下不難理解 select trunc(date'2015-8-1','year') from dual

--extract() 獲取時間各個部分 select extract(month from date'2015-08-01') from dual

--date'字符串' 字符串轉化時間 select date'2015-01-02' from dual

--to_timestamp() 格式化(時間)字符串 --->不常用<--- select to_timestamp('2015-01-01','yyyy-mm-dd') from dual

---------------------- ---->常用轉換函數<---- ----------------------

--to_char() 轉換成字符串類型  to_char轉化有  格式 容易出錯  例如$9999.9 不能寫成¥9999.9 select to_char(date'2015-01-01','yyyy"年"mm"月"dd"日"') from dual select to_char(1234.4,'$9999.9') from dual

--to_date() 轉換成時間類型 date系統格式 2015/5/6 select to_date('2015-5-6','yyyy-mm-dd') from dual

--to_number() 轉換成數值類型 select to_number('2015.56') from dual

---------------------- ---->操作結果函數<---- ----------------------

--decode() 相當於sql的case end select decode(1,1,'true',2,'false') from dual

--nvl() 替換指定列中的null值 select nvl(name,'無名') from pet --name 是null 返回‘無名’ 不是null返回 原值

--nvl2() select nvl2(name,'無名','有名') from pet --name 是null 返回‘無名’ 不是null返回 ‘有名’

------------------------ ---->常用的多行函數<---- ------------------------

--sum() 求和 select sum(love) from pet

--avg() 求平均數 select avg(love) from pet

--count() 計數 select count(*) from pet

--max() 求最大數 select max(love) from pet

--min() 求最小數 select min(love) from pet

 

 

注意:Oracle數據庫插入時間:不能直接插入時間
如2014-12-05,而應該
to_date('2014-12-05','yyyy-mm-dd'),

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