oracle常用函数(2)
1) trunc函数,用于截断数字,
截断数字,用法为:trunc(n1,n2),n1表示要被截断的数字,n2表示要截断到那位,但是不会进行四舍五入。
n2还可以表示负数,表示截断到小数点前,意思就是小数点后面的都不要了,最后结果是以0结尾的整数。
当trunc(n1,n2)当n2为负数时,-1表示个位为0,-2表示个位和十位都为0,后面一次类推。
SQL> select trunc(13.1) from dual;
TRUNC(13.1)
-----------
13
SQL> select trunc(13.23,2)from dual;
TRUNC(13.23,2)
--------------
13.23
SQL> select trunc(13.23,1)from dual;
TRUNC(13.23,1)
--------------
13.2
SQL> select trunc(13.23432,3)from dual;
TRUNC(13.23432,3)
-----------------
13.234
SQL> select trunc(13.2,-1)from dual;
TRUNC(13.2,-1)
--------------
10
SQL> select trunc(119.2,-1)from dual;
TRUNC(119.2,-1)
---------------
110
SQL> select trunc(120.2,-1)from dual;
TRUNC(120.2,-1)
---------------
120
SQL> select trunc(120.2,-2)from dual;
TRUNC(120.2,-2)
---------------
100
SQL> select trunc(1220.11,-3)from dual;
TRUNC(1220.11,-3)
-----------------
1000
SQL> select trunc(12230.11,-4)from dual;
TRUNC(12230.11,-4)
------------------
10000
2)trunc用于截断日期
SQL> select trunc(sysdate)from dual;//返回当前日期
TRUNC(SYSDATE)
--------------
2019/05/21
SQL> select trunc(sysdate,'mm')from dual;//返回当前月份的第一天
TRUNC(SYSDATE,'MM')
-------------------
2019/05/01
SQL> select trunc(sysdate,'yyyy')from dual;//返回当前年份的第一天
TRUNC(SYSDATE,'YYYY')
---------------------
2019/01/01
SQL> select trunc(sysdate,'dd')from dual;//返回当前日期
TRUNC(SYSDATE,'DD')
-------------------
2019/05/21
SQL> select trunc(sysdate,'d')from dual;//返回当前星期的第一天(为星期天,工作的第一天为星期一)
TRUNC(SYSDATE,'D')
------------------
2019/05/19
SQL> select trunc(sysdate,'hh')from dual;//返回当前小时
TRUNC(SYSDATE,'HH')
-------------------
2019/05/21 15:00:00
SQL> select trunc(sysdate,'mi')from dual;//返回当前时间的分钟,没有秒的精确,只有毫秒。
TRUNC(SYSDATE,'MI')
-------------------
2019/05/21 15:20:00
3)add_months(时间,数字)表示可以得到某一时间之前或之后n个月的时间;
SQL> select add_months(sysdate,1)from dual;//获取当前时间一个月之后的时间
ADD_MONTHS(SYSDATE,1)
---------------------
2019/06/21 15:37:02
SQL> select add_months(sysdate,6)from dual;//获取到当前时间半年之后的时间
ADD_MONTHS(SYSDATE,6)
---------------------
2019/11/21 15:37:20
4)months_between函数返回两个日期之间的月份数。如果两个日期月份内天数相同,或者都是某个月的最后一天,返回一个整数,否则,返回数值带小数,以每天1/31月来计算月中剩余天数。
SQL> select months_between(sysdate,'10-5月-20')from dual;
MONTHS_BETWEEN(SYSDATE,'10-5月-20')
----------------------------------
-11.6239557198327
select months_between('10-5月-20',sysdate)from dual;
MONTHS_BETWEEN('10-5月-20',SYSDATE)
----------------------------------
11.6239329450418
SQL> select months_between('21-5月-20',sysdate)from dual;
MONTHS_BETWEEN('21-5月-20',SYSDATE)
----------------------------------
12
oracle常用函数(2)的更多相关文章
- Oracle常用函数
前一段时间学习Oracle 时做的学习笔记,整理了一下,下面是分享的Oracle常用函数的部分笔记,以后还会分享其他部分的笔记,请大家批评指正. 1.Oracle 数据库中的to_date()函数的使 ...
- Oracle常用函数:DateDiff() 返回两个日期之间的时间间隔自定义函数
首先在oracle中没有datediff()函数可以用以下方法在oracle中实现该函数的功能:1.利用日期间的加减运算天:ROUND(TO_NUMBER(END_DATE - START_DATE) ...
- oracle常用函数总结(二)
之前也有写过“oracle常用函数总结(一)”,为了尽量找全常见oracle函数,笔者特意查找了相关资料来作为参考,下边给大家罗列出来,部分和之前有重复的,希望能帮到大家! 列举了31个函数和1个分组 ...
- oracle常用函数总结
Oracle常用函数总结 ---oracle常用函数-----一.数值型常用函数----取整数--select floor(10.1) from dual;--将n四舍五入,保留小数点后m位(默认情况 ...
- oracle常用函数整理
oracle常用函数整理 1.绝对值.取余.判断数值正负函数 绝对值:ABS(n) 示例: SELECT ABS(100),ABS(-100),ABS('100') FROM ...
- oracle常用函数积累
--oracle常用函数积累-- --1.字符串长度:LENGTH ,语法: CONCAT(string) --示例 select LENGTH('AA_BB') from dual;--结果:5 - ...
- ORACLE常用函数的使用方法
ORACLE常用函数的使用方法 1. 字符串函数 (1) length(); 获取字符长度SELECT LENGTH('中国') FROM PLATFORM_METAINFO_TABLES WHERE ...
- SQL操作数据——SQL组成,查询基础语法,where,Oracle常用函数等
SQL组成 DML数据操作语言 DCL数据控制语言 DQL数据查询语言 DDL数据定义语言 查询基础语法 记录筛选 where 子句 记录筛选 where 子句 实例练习 实例练习 Select语句中 ...
- oracle常用函数及示例
学习oracle也有一段时间了,发现oracle中的函数好多,对于做后台的程序猿来说,大把大把的时间还要学习很多其他的新东西,再把这些函数也都记住是不太现实的,所以总结了一下oracle中的一些常用函 ...
- 十、oracle 常用函数
一.字符函数字符函数是oracle中最常用的函数,我们来看看有哪些字符函数:lower(char):将字符串转化为小写的格式.upper(char):将字符串转化为大写的格式.length(char) ...
随机推荐
- docker容器的学习
什么是docker Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,于 2013 年 3 月以 Apache 2.0 授权协议开源 ...
- C++入门经典-例3.15-使用do-while循环计算1到10的累加
1:代码如下: // 3.15.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> usin ...
- Java密码处理
- Unknown class xxx in Interface Builder file. / NSUnknownKeyException
Error: 2019-11-24 22:16:01.047997+0800 SingleViewDemo[22576:34699748] Unknown class FeedbackCell in ...
- c++ STL -- set和multiset
set和multiset 1.结构 set和multiset会根据特定的排序原则将元素排序.两者不同之处在于,multisets允许元素重复,而set不允许重复. 只要是assignable.copy ...
- windows怎么远程访问deepin linux桌面
deepin linux端安装anydesk 1.首先点击打开任务栏上的“深度商店” 2.打开后搜索anydesk. 3.点击进入后按“安装”即可,安装完成即可在“深度商店”点击“打开”运行anyde ...
- T78748 【lcez模拟赛】机场Ⅰ
T78748 [lcez模拟赛]机场Ⅰ 其实这就是最小生成树的题辣 注意输入毒瘤 输入的话要避免记录中间这个‘ , ’ 如下操作可以解决 特别注意%d之间的‘ , ’ 边的权值要现算 存点的话存横纵坐 ...
- ListView 中图片错位的问题是如何产生的?
图片错位问题的本质源于我们的 listview 使用了缓存 convertView,假设一种场景,一个 listview 一屏显示九个item,那么在拉出第十个 item 的时候,事实上该 item ...
- 十五:jinja2过滤器之实现自定义过滤器
过滤器的本质就是函数,如果在模板中调用这个过滤器,那么就会将这个变量的值作为第一个参数传给过滤器函数,然后将函数的返回值作为滤器的返回值 1.在python文件中写好过滤的函数和逻辑2.将将函数注册到 ...
- Golang基础(8):go interface接口
一:接口概要 接口是一种重要的类型,他是一组确定的方法集合. 一个接口变量可以存储任何实现了接口方法的具体值.一个重要的例子就是io.Reader和io.Writer type Reader inte ...