oracle中各种函数,oracle中常用函数大全
1、數(shù)值型常用函數(shù)
函數(shù) 返回值 樣例 顯示
ceil(n) 大于或等于數(shù)值n的最小整數(shù) select ceil(10.6) from dual; 11
floor(n) 小于等于數(shù)值n的最大整數(shù) select ceil(10.6) from dual; 10
mod(m,n) m除以n的余數(shù),若n=0,則返回m select mod(7,5) from dual; 2
power(m,n) m的n次方 select power(3,2) from dual; 9
round(n,m) 將n四舍五入,保留小數(shù)點(diǎn)后m位 select round(1234.5678,2) from dual; 1234.57
sign(n) 若n=0,則返回0,否則,n>0,則返回1,n<0,則返回-1 select sign(12) from dual; 1
sqrt(n) n的平方根 select sqrt(25) from dual ; 5
2、常用字符函數(shù)
initcap(char) 把每個(gè)字符串的第一個(gè)字符換成大寫(xiě) select initicap('mr.ecop') from dual; Mr.Ecop
lower(char) 整個(gè)字符串換成小寫(xiě) select lower('MR.ecop') from dual; mr.ecop
replace(char,str1,str2) 字符串中所有str1換成str2 select replace('Scott','s','Boy') from dual; Boycott
substr(char,m,n) 取出從m字符開(kāi)始的n個(gè)字符的子串 select substr('ABCDEF',2,2) from dual; CD
length(char) 求字符串的長(zhǎng)度 select length('ACD') from dual; 3
|| 并置運(yùn)算符 select 'ABCD'||'EFGH' from dual; ABCDEFGH
3、日期型函數(shù)
sysdate 當(dāng)前日期和時(shí)間 select sysdate from dual;
last_day 本月最后一天 select last_day(sysdate) from dual;
add_months(d,n) 當(dāng)前日期d后推n個(gè)月 select add_months(sysdate,2) from dual;
months_between(d,n) 日期d和n相差月數(shù) select months_between(sysdate,to_date('20020812','YYYYMMDD')) from dual;
next_day(d,day) d后第一周指定day的日期 select next_day(sysdate,'Monday') from dual;
day 格式 有 'Monday' 星期一 'Tuesday' 星期二
'wednesday' 星期三 'Thursday' 星期四 'Friday' 星期五
'Saturday' 星期六 'Sunday' 星期日
4、特殊格式的日期型函數(shù)
Y或YY或YYY 年的最后一位,兩位,三位 select to_char(sysdate,'YYY') from dual;
Q 季度,1-3月為第一季度 select to_char(sysdate,'Q') from dual;
MM 月份數(shù) select to_char(sysdate,'MM') from dual;
RM 月份的羅馬表示 select to_char(sysdate,'RM') from dual; IV
month 用9個(gè)字符表示的月份名 select to_char(sysdate,'month') from dual;
ww 當(dāng)年第幾周 select to_char(sysdate,'ww') from dual;
w 本月第幾周 select to_char(sysdate,'w') from dual;
DDD 當(dāng)年第幾天,一月一日為001,二月一日032 select to_char(sysdate,'DDD') from dual;
DD 當(dāng)月第幾天 select to_char(sysdate,'DD') from dual;
D 周內(nèi)第幾天 select to_char(sysdate,'D') from dual; 如 sunday
DY 周內(nèi)第幾天縮寫(xiě) select to_char(sysdate,'DY') from dual; 如 sun
hh12 12小時(shí)制小時(shí)數(shù) select to_char(sysdate,'hh12') from dual;
hh24 24小時(shí)制小時(shí)數(shù) select to_char(sysdate,'hh24') from dual;
Mi 分鐘數(shù) select to_char(sysdate,'Mi') from dual;
ss 秒數(shù) select to_char(sysdate,'ss') from dual;
select to_char(sysdate,'YYYY-MM-DD HH:24:mi:ss') from dua;
to_number() 將合法的數(shù)字字符串 select to_number('88877') from dual; 88877
to_char() 將數(shù)字轉(zhuǎn)換為字符串 select to_char(88877) from dual; '88877'
set serveroupt on;
dbms_output.put_line('hello world')
set heading off 由于正在創(chuàng)建數(shù)據(jù)文件,不需要表頭
set pagesize 0 不需要分頁(yè)
set linesize 80 設(shè)置行的最大尺寸
set echo off 告訴sql plus 在執(zhí)行語(yǔ)句時(shí),不要回顯語(yǔ)句
set Feedback off 禁止sql plus 顯示有多少滿足查詢的行被檢索到
col sales format 999,999,999
append 添加文本到當(dāng)前行尾
change/old/new/ 在當(dāng)前行用新的文本代替舊的文本
change/text 從當(dāng)前行刪除wenb
del 刪除當(dāng)前行
input text 在當(dāng)前行之后添加一行
list 顯示緩沖區(qū)中的所有行
list n 顯示緩沖區(qū)中的第n行
list m n 顯示m到n
5、字符函數(shù)
--------------------------------------------------------------------------------
字符函數(shù)主要用于修改字符列。這些函數(shù)接受字符輸入,返回字符或數(shù)字值。Oracle 提供的一些字符函數(shù)如下。
1. CONCAT (char1,char2)
返回連接“char2”的“char1”。
示例 SELECT CONCAT( CONCAT(ename,' is a '),job) FROM emp;
2. INITCAP(string)
將“string”的字符轉(zhuǎn)成大寫(xiě)。
示例 Select INITCAP(ename) from emp;
3. LOWER (string)
將“string”轉(zhuǎn)成小寫(xiě)。
示例 Select LOWER(ENAME) from emp;
4. LPAD(char1,n [,char2])
返回“char1”,左起由“char2”中的字符補(bǔ)充到“n”個(gè)字符長(zhǎng)。如果“char1”比“n”長(zhǎng),則函數(shù)返回“char1”的前“n”個(gè)字符。
示例 SELECT LPAD(ename,15,'*') FROM emp;
5. LTRIM(string,trim_set)
從左邊刪除字符,此處“string”是數(shù)據(jù)庫(kù)的列,或者是字面字符串,而“trim_set” 是我們要去掉的字符的集合。
示例 SELECT LTRIM('abcdab','a') FROM DUAL;
6. REPLACE(string,if,then)
用 0 或其他字符代替字符串中的字符。“if”是字符或字符串,對(duì)于每個(gè)出現(xiàn)在“string”中的“if”,都用“then”的內(nèi)容代替。
示例 SELECT REPLACE('JACK and JUE','J','BL') FROM DUAL;
7. RPAD(char1,char2])
返回“char1”,右側(cè)用“char2”中的字符補(bǔ)充到“n”個(gè)字符長(zhǎng)。如果 “char1”比“n” 長(zhǎng),則函數(shù)返回“char1”的前“n”個(gè)字符。
示例 SELECT RPAD(ename,'*') FROM emp;
8. RTRIM(string,trim_set)
從右側(cè)刪除字符,此處“string”是數(shù)據(jù)庫(kù)的列,或者是字面字符串,而“trim_set” 是我們要去掉的字符的集合。
示例 SELECT RTRIM('abcdef','f') FROM DUAL;
9. SOUNDEX(char)
返回包含“char”的表意字符的字符串。它允許比較英語(yǔ)中拼寫(xiě)不同而發(fā)音類似的字。
示例 SELECT ename FROM emp
WHERE SOUNDEX(ename) = SoUNDEX('SMYTHE');
10. SUBSTR(string,start [,count])
返回“string”中截取的一部分。該命令截取“string”的一個(gè)子集,從“start”位置開(kāi)始,持續(xù)“count”個(gè)字符。如果我們不指定“count”,則從“start”開(kāi)始截取到“string”的尾部。
示例 SELECT SUBSTR('ABCDEFGIJKLM',3,4) FROM DUAL;
11. TRANSLATE(string,then)
“if”中字符的位置,并檢查“then”的相同位置,然后用該位置的字符替換 “string”中的字符。
示例 SELECT TRANSLATE(ename,'AEIoU','XXXXX') FROM emp;
12. UPPER(string)
返回大寫(xiě)的“string”。
示例 SELECT UPPER('aptech computer education') FROM dual;
13. ASCII(string)
該命令是“American Standard Code for Information Interchange”的縮寫(xiě)。它是使用數(shù)字表示可打印字符的基本規(guī)則。該函數(shù)返回 “string”中第一個(gè)(最左邊)字符的 ASCII 值。
示例 SELECT ASCII('APTECH') from dual;
14. INSTR (string,set[,start[,occurrence] ] )
該命令“string”中從“start”位置開(kāi)始查找字符集合的位置,再查找“set”出現(xiàn)的第一次、第二次等等的“occurrence”(次數(shù))。“start”的值也可以是負(fù)數(shù),代表從字符串結(jié)尾開(kāi)始向反方向搜索。該函數(shù)也用于數(shù)字和日期數(shù)據(jù)類型。
示例 SELECT INSTR('aptech is aptech','ap',1,2) FROM DUAL;
15. LENGTH(string)
返回“string”的長(zhǎng)度值。
示例 SELECT ename,LENGTH(ename) FROM emp
WHERE empno = 7698;
總結(jié)
以上是編程之家為你收集整理的oracle中常用函數(shù)大全全部?jī)?nèi)容,希望文章能夠幫你解決oracle中常用函數(shù)大全所遇到的程序開(kāi)發(fā)問(wèn)題。
如果覺(jué)得編程之家網(wǎng)站內(nèi)容還不錯(cuò),歡迎將編程之家網(wǎng)站推薦給程序員好友。
本圖文內(nèi)容來(lái)源于網(wǎng)友網(wǎng)絡(luò)收集整理提供,作為學(xué)習(xí)參考使用,版權(quán)屬于原作者。
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的oracle中各种函数,oracle中常用函数大全的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: oracle内部函数,[数据库]Orac
- 下一篇: c语言线性表顺序存储实验小结,数据结构学