Oracle——trunc()函数的使用
trunc是oracle数据库中一种格式化函数。
1.处理日期
1.1.当年第一天:
SELECT TRUNC(SYSDATE,'YYYY') FROM DUAL;
SELECT TRUNC(SYSDATE,'YY') FROM DUAL;
SELECT TRUNC(SYSDATE,'YEAR') FROM DUAL;
--返回结果是2019/1/1
1.2.当月第一天:
SELECT TRUNC(SYSDATE,'MM') FROM DUAL;
SELECT TRUNC(SYSDATE,'MONTH') FROM DUAL;
--返回结果:2019/1/1。很尴尬,我现在是一月份,所以看不出来区别,如果是2月份,应该是2019/2/1
1.3.本周第一天:
SELECT TRUNC(SYSDATE,'D') FROM DUAL;
SELECT TRUNC(SYSDATE,'DAY') FROM DUAL;
--返回结果是:2019/1/27(周日为第一天,当前时间是:2019-1-28,星期二)
1.4.当前小时时间,精确到小时:
SELECT TRUNC(SYSDATE,'HH') FROM DUAL;
SELECT TRUNC(SYSDATE,'HH24') FROM DUAL;
--返回结果是:2019/1/28 16:00:00(当前时间是:2019-01-28 16:50:35)
1.5.当前分钟时间,精确到分钟。(没有精确到秒的用法) :
SELECT TRUNC(SYSDATE,'MI') FROM DUAL;
--返回结果:2019/1/28 16:52:00
1.6.当前季度第一天:
SELECT TRUNC(SYSDATE,'Q') FROM DUAL;
--返回结果:2019/1/1(我当前时间是2019-01-28 16:55:20)
1.7.昨天、明天:
SELECT TRUNC(SYSDATE+1) FROM DUAL;--明天,返回结果:2019/1/29
SELECT TRUNC(SYSDATE-1) FROM DUAL;--昨天,返回结果:2019/1/27
1.8.计算两个时间相差的天数:
SELECT TRUNC(SYSDATE-TO_DATE('2019-2-10 18:00:00','YYYY/MM/DD HH24:MI:SS')) FROM DUAL; --结果:-13
SELECT TRUNC(SYSDATE-TO_DATE('2019-2-10 12:00:00','YYYY/MM/DD HH24:MI:SS')) FROM DUAL; --结果:-12
SELECT TRUNC(SYSDATE-TO_DATE('2019-1-10 12:00:00','YYYY/MM/DD HH24:MI:SS')) FROM DUAL; --结果:18
SELECT TRUNC(SYSDATE-TO_DATE('2019-1-10 18:00:00','YYYY/MM/DD HH24:MI:SS')) FROM DUAL; --结果:17
--注意:我当前时间是2019-01-28 17:02:16。我比较的时间分别是2019-2-10 18:00:00,2019-2-10 12:00:00,2019-1-10 12:00:00,2019-1-10 18:00:00与当前时间比较
1.9.需要注意:
SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') AS 系统日期,TO_CHAR(TRUNC(SYSDATE),'YYYY-MM-DD HH24:MI:SS') AS trunc日期 FROM DUAL;
--返回结果如下:
系统日期 TRUNC日期
------------------- -------------------
2019-01-28 17:10:19 2019-01-28 00:00:00
--注意这两种查询的区别,
2.处理数字:
用法:TRUNC(NUMBER,length),length表示会保留小数点后面几位数字,如果没有则只保留整数部分,注意:这个不会对数字进行四舍五入
SELECT TRUNC(1234.123456789) FROM DUAL;--
SELECT TRUNC(1234.123456789,0) FROM DUAL;--
SELECT TRUNC(1234.123456789,3) FROM DUAL;1234.123
SELECT TRUNC(1234.123456789,5) FROM DUAL;--1234.12345
Oracle——trunc()函数的使用的更多相关文章
- Oracle trunc()函数的用法
Oracle trunc()函数的用法 /**************日期********************/1.select trunc(sysdate) from dual --2013-0 ...
- Oracle trunc函数
--Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2011 ...
- oracle获取本月第一天和最后一天及Oracle trunc()函数的用法
select to_char(trunc(add_months(last_day(sysdate), -1) + 1), 'yyyy-mm-dd') "本月第一天", to_cha ...
- Oracle trunc()函数
Oracle trunc()函数的用法 --Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysd ...
- Oracle trunc()函数的用法--来着心静禅定ing
1.TRUNC(for dates) TRUNC函数为指定元素而截去的日期值. 其具体的语法格式如下: TRUNC(date[,fmt]) 其中: date 一个日期值 fmt 日期格式,该日期将由指 ...
- Oracle trunc() 函数处理数字、日期的整理
--Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2013- ...
- Oracle trunc()函数的用法及四舍五入 round函数
--Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2011 ...
- [转]Oracle trunc()函数的用法
原文地址:http://www.cnblogs.com/gengaixue/archive/2012/11/21/2781037.html 1.TRUNC(for dates) TRUNC函数为指定元 ...
- Oracle trunc()函数,decode()函数,substr函数,GREATEST函数,java中substring函数的用法
--Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2013- ...
- Oracle - Trunc() 函数截取日期&截取数值
Oracle TRUNC函数可以截取数字和日期类型:截取日期:select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; --显示当前时间 s ...
随机推荐
- Openfire 单人聊天和多人聊天(发送消息、接收消息)
Openfire 单人聊天和多人聊天(发送消息.接收消息) 一.单人聊天 1)发送消息: 首先要获取一个聊天窗口,getConnection()为获取连接connection的方法,调用getFrie ...
- test001
#include <iostream> using namespace std; ][]; int main() { int num; ; ; i <= ; i++) dp[i][] ...
- mysql数据字段整理
<?php header('content-type:text/html;charset=utf-8'); define('DB_HOST','127.0.01'); define('DB_US ...
- spring 测试类test测试方法
实例掩码地址为:孔浩组织结构设计 web.xml配置文件: <!-- Spring 的监听器可以通过这个上下文参数来获取beans.xml的位置 --> <context-param ...
- SpringBoot Mybatis整合(注解版),SpringBoot集成Mybatis(注解版)
SpringBoot Mybatis整合(注解版),SpringBoot集成Mybatis(注解版) ================================ ©Copyright 蕃薯耀 2 ...
- 谈一谈 MPU6050 姿态融合(转)
姿态角(Euler角)pitch yaw roll飞行器的姿态角并不是指哪个角度,是三个角度的统称.它们是:俯仰.滚转.偏航.你可以想象是飞机围绕XYZ三个轴分别转动形成的夹角. 地面坐标系(eart ...
- shell for循环 多个变量
需求:需要输出以下2开头的端口号和其对应的文件 like: port and port_k8s_xxx.conf 其脚本为: #! /bash/shell #以value_name=(value1 v ...
- 下载Crypto,CyCrypto,PyCryptodome 报错问题
python下载Crypto,CyCrypto,PyCryptodome,如有site-packages中存在crypto.pycrypto,在pip之前,需要pip3 uninstall crypt ...
- 创建多线程Thread
创建一个线程: # 方式一from threading import Thread import time def func(n): time.sleep(1) print(n) t = Thread ...
- poj3255 Roadblocks
Roadblocks Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 13594 Accepted: 4783 Descr ...