Oracle trunc的使用
在生产环境中我们经常会用到只取年月日或者时间处理的场景,大多数人用的都是to_char(string,'yyyy-mm-dd')或者to_date(string,'yyyy-mm-dd')来处理,不说这个方式的效率,但在格式方面来说看上去就没有那么简洁。
--to_char处理
SELECT to_char(sysdate,'yyyy-mm-dd') from dual;

--trunc处理
SELECT TRUNC(sysdate) from dual;

拿个实例来讲
原本的条件是用大于等于和小于等于或者用between范围查询来查数据(查询同一天的数据时适用);注意:如果时间字段有索引的话建议还是用这种方式处理,trunc会让索引失效。

使用trunc处理后的语句,简短了很多。注意:如果时间字段有索引的话,不建议用trunc,trunc会让索引失效。

trunc的其他使用方式:
1 --返回当年第一天
2 select trunc(sysdate,'yyyy') from dual ;
3 结果:2022-01-01
4 --返回当月第一天
5 select trunc(sysdate,'mm') from dual ;
6 结果:2022-09-01
7 --返回当前年月日
8 select trunc(sysdate,'dd') from dual ;
9 结果:2022-09-01
10 --返回当前星期的第一天(星期日)
11 select trunc(sysdate,'d') from dual ;
12 结果:2022-08-28
13 --返回当前日期截取到小时,分秒补0
14 select trunc(sysdate,'hh') from dual ;
15 结果:2022-09-01 9:00:00
16 --返回当前日期截取到分,秒补0
17 select trunc(sysdate,'mi') from dual ;
18 结果:2022-09-01 9:38:00
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()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2013- ...
随机推荐
- 十分钟配置完成Go开发环境
本文介绍了GO环境搭建以及GOPATH.GOROOT等基本概念,希望让你少走弯路 SDK下载 如果要使用Golang,我们首先要安装Golang的SDK开发包 Golang是网友给Go语言起的另一个称 ...
- FreeRTOS LIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 存在的意义以及高于它的中断不能调用 safe freertos api
This is how I understand it. 我是这样理解的. If we now have 2 tasks and 6 interrupts, among which, and when ...
- Python网络爬虫之requests模块2
Python网络爬虫之requests模块(2) 今日内容 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 知识点回顾 xpath的解析流程 bs4的解析流程 ...
- 设计一个基于 LSTM 神经网络的文本分类器
前一篇:<用于自然语言处理的循环神经网络RNN> 序言:本节主要讲解如何使用循环神经网络(RNN)创建一个文本分类器.RNN 是一类适合处理序列数据的神经网络的统称,而我们将在本节中使用 ...
- 如何进行个人wiki写作
Wiki是一种内容管理系统,它的特点包括:多人协作模式.内容逐步积累.网状知识链接.而用作个人知识管理的个人wiki,就利用了内容逐步积累和网状知识链接这两个特点.因为是个人的,所以用不着协作. 怎么 ...
- ANTLR3 简介及示例
ANTLR(pronounced Antler) 是一个语言识别工具,Another Tool forLanguage Recognition 的缩写.ANTLR由旧金山大学(University o ...
- laravel之任务调度(定时任务)
crontab指令线性增长.毕竟crontab是一项系统级的配置,在业务中我们为了节约机器,往往对于量不大的多个项目会放在同一台服务器上,crontab指令多了就容易管理混乱,并且功能也不够灵活强大( ...
- docker-compose之配置docker-compose.yml
当前有三种版本的Compose配置文件格式: Version 1 旧版格式,通过省略YAML的根配置项version来指定. 未声明版本的Compose配置文件都被视为V1版,所有的服务都作为根选项在 ...
- Redis中常见的延迟问题
使用复杂度高的命令 Redis提供了慢日志命令的统计功能 首先设置Redis的慢日志阈值,只有超过阈值的命令才会被记录,这里的单位是微妙,例如设置慢日志的阈值为5毫秒,同时设置只保留最近1000条慢日 ...
- 【矩阵压缩】codeforces 1980 E. Permutation of Rows and Columns
题目链接 https://codeforces.com/problemset/problem/1980/E 题意 共输入\(T\)组测试用例,每组测试用例第一行输入两个整数\(n, m\),分别代表输 ...