【2017/4/24】oracle之sql(三)
来源:互联网 发布:什么叫菜鸟网络 编辑:程序博客网 时间:2024/06/10 03:33
数字函数:
ROUND按指定小数位 四舍五入TRUNC按指定小数位 截断
MOD两数相除,取余
4 5 6 . 7 8 9
-3 -2 -1 0 1 2 3
round(456.789,2)-->9>4-->456.79
trunc(456.789,2)-->----->456.78
round(456.789,-2)-->5>4-->500
round(456.789,-1)-->6>4-->460
SQL> select round(456.789,-1) from dual;
ROUND(456.789,-1)
-----------------
460
SQL> select round(456.789,-2) from dual;
ROUND(456.789,-2)
-----------------
500
SQL>
SQL> select mod(456,2) from dual;
MOD(456,2)
----------
0
SQL> select mod(457,2) from dual;
MOD(457,2)
----------
1
SQL>
SQL> select abs(-100) from dual; #绝对值
ABS(-100)
----------
100
日期函数
DD-MON-RRSQL> select sysdate from dual;
SYSDATE
---------
10-APR-17
SQL>
SQL> select to_char(sysdate,'yyyy-mm-dd') from dual;
TO_CHAR(SY
----------
2017-04-10
SQL>
修改日期显示格式
SQL> select hiredate from emp where deptno=10;
HIREDATE
---------
09-JUN-81
17-NOV-81
23-JAN-82
SQL> show parameter nls_date_format
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
nls_date_format string
SQL> alter session set nls_date_format='yyyy-mm-dd';
Session altered.
SQL> select hiredate from emp where deptno=10;
HIREDATE
----------
1981-06-09
1981-11-17
1982-01-23
SQL>
SQL> select sysdate-hiredate,ename from emp;
SYSDATE-HIREDATE ENAME
---------------- ----------
13263.7462 SMITH
13198.7462 ALLEN
13196.7462 WARD
SQL> select sysdate-1,ename from emp;
SYSDATE-1 ENAME
---------- ----------
2017-04-09 SMITH
2017-04-09 ALLEN
2017-04-09 WARD
2017-04-09 JONES
2017-04-09 MARTIN
SQL> select ename,months_between(sysdate,hiredate) months from emp;
ENAME MONTHS
---------- ----------
SMITH 435.798359
ALLEN 433.701585
SQL> select ename,add_months(hiredate,3) from emp;
ENAME ADD_MONTHS
---------- ----------
SMITH 1981-03-17
ALLEN 1981-05-20
WARD 1981-05-22
SQL> select next_day(sysdate,'month') from dual;
NEXT_DAY(S
----------
2017-04-17
SQL> select to_char(sysdate,'day') from dual;
TO_CHAR(SYSDATE,'DAY')
------------------------------------
monday
SQL> select to_char(sysdate,'month') from dual;
TO_CHAR(SYSDATE,'MONTH')
------------------------------------
april
SQL> select to_char(sysdate,'year') from dual;
TO_CHAR(SYSDATE,'YEAR')
------------------------------------------
twenty seventeen
SQL>
SQL> select last_day(sysdate) from dual;
LAST_DAY(S
----------
2017-04-30
SQL>
0 0
- 【2017/4/24】oracle之sql(三)
- oracle学习笔记之三(函数:Pl/sql)
- Oracle PL/SQL语言基础之三
- ORACLE SQL性能优化之三
- ORACLE PL/SQL编程详解之三
- oracle SQL简介(三)
- 【2017/4/23】oracle之sql(一)
- 【2017/4/23】oracle之sql(二)
- ORACLE SQL性能优化系列(三)
- ORACLE SQL性能优化系列(三)
- ORACLE SQL性能优化系列(三)
- ORACLE SQL性能优化(三)
- ORACLE SQL性能优化(三)
- oracle PL-SQL学习案例(三)
- Oracle SQL 内置函数大全 (三)
- Oracle PL/SQL 学习笔记(三)
- oracle sql优化 三 (转载)
- Oracle学习笔记(三)PL/SQL
- JSTL标签库数字,日期格式化[转发]
- 一个特殊静态页面的处理---静态页面实现流程图
- Git学习(四)——分支的创建与合并
- js中 == 和 ===的区别
- 51_nod 1019 逆序数
- 【2017/4/24】oracle之sql(三)
- 链表中倒数第k个节点(Java实现)
- 反射-动态代理(实例)
- Could not get lock /var/lib/dpkg/lock -open (11 Resource temporarily unavailable)
- 2017年4月-学习日记
- HTTP的post请求和get请求的区别
- FFT c代码的收集
- 算法训练 Anagrams问题
- spilit("|")得不到想要的分隔结果