Oracle中常用的函數

---------------------- 字符串 ----------------------------
-- 字符串連接
select concat('aaa','bbb') || 'ccc' from dual;
-- 字符串的各個單詞首字母大寫
select initcap('i love china') from dual;
-- 字符串變大寫
select upper('i love china') from dual;
-- 字符串變小寫
select lower('I Love China') from dual;
-- 返回第二個參數的位置
select instr('abcde','c') from dual;
-- 右補全
select rpad('a',5,'$') from dual;
select rpad('b',5) from dual;
-- 左補全
select lpad('a',5,'$') from dual;
select lpad('b',5) from dual;
-- 去除左空格
select ltrim ('  abc') from dual;
-- 去除右空格
select rtrim('abc   ') from dual;
-- 去除左右空格
select trim('   abc  ') from dual;
-- 截取字符串
select substr('aaabbbcccddd',3,4) from dual;
-- 替換
select replace('aaabbbccc','bbb','c') from dual; 
-- 去除字符串
select trim ('b' from 'bbaabb') from dual;
select trim (leading 'b' from 'bbaabb') from dual;
select trim (trailing 'b' from 'bbaabb') from dual; 
select trim (both 'b' from 'bbaabb') from dual; 

----------------------  數學 ----------------------------
-- 絕對值
select abs('-1') from dual;
-- 返回大於或等於給出數字的最小整數
select ceil(20.4) from dual;
-- 給定的數字取整數
select floor(18.3) from dual; 
-- 返回一個n1除以n2的餘數
select mod(20,3) from dual;
-- 返回n1的n2次方
select power(2,3) from dual;
-- 取數字n的符號
select sign(-12) from dual;
-- 返回數字的根
select sqrt(16) from dual;
-- 按照指定的精度四捨五入
select round(20.2323,2) from dual;
-- 按照指定的精度截取一個數
select trunc(10.21233,2) from dual;
---------------------- 日期函數----------------------------
select sysdate from dual;
-- 增加或減去月份
select add_months(sysdate,1) from dual;
select add_months(sysdate,-1) from dual;
-- 返回日期的最後一天
select last_day(sysdate) from dual;
-- 算月份差
select months_between(sysdate,add_months(sysdate,10)) from dual;
-- 返回日期d1在下週,星期幾(參數c1)的日期
select next_day(sysdate,'星期一') from dual;
-- 返回日期d1所在期間(參數c1)的第一天日期
select trunc(sysdate) from dual;
-----------------------轉換函數------------------------
-- 日期轉字符
select to_char(sysdate,'yyyy-mm-dd') from dual;
-- 字符轉日期
select to_date('2020-1-1','yyyy-mm-dd HH:mi:ss') from dual;
-- 轉數字
select to_number('112') from dual;
-----------------------其他函數------------------------
-- 查uid
select uid from dual;
-- 查當前用戶名
select user from dual;
-- 查是否爲空
select nvl(null,100) from dual;
-- 相等返回Null否則返回第一個參數
select nullif('1','2') from dual;
----------------------聚合函數-------------------------
-- 總條數
select count(*) from emp;
-- 平均數
select avg(empno) from emp;
-- 最大值
select max(empno) from emp;
-- 最小值
select min(empno) from emp;
-- 求和
select sum(empno) from emp;
-- 求方差
select variance(empno) from emp;
-- 求標準差
select stddev(all empno) from emp;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章