当前位置: 首页 > news >正文

oracle 日期

日期加减

Oracle中日期进行加减可以使用多种方式,以下介绍三种
一种是针对天的操作,适用于对日,时,分,秒的操作,
一种是对月的操作,适用于月,年的操作,
一种是使用INTERVAL函数,适用于年,月,日,时,分,秒的操作

直接加减数字

  • 加一天
select sysdate "当前时间",sysdate+1 "当前时间加一天" from dual ;

结果:

2023-11-02 17:09:46	|	2023-11-03 17:09:46

灵活使用

SELECTSYSDATE "当前时间",SYSDATE + 1 "加一天",SYSDATE + (1 / 24) "加一小时",SYSDATE + (1 / 24 / 60) "加一分钟",SYSDATE + (1 / 24 / 60 / 60) "加一秒钟",SYSDATE - 1 "减一天"
FROMdual;

结果:

2023-11-02 17:14:41	|	2023-11-03 17:14:41	|	2023-11-02 18:14:41	|	2023-11-02 17:15:41	|	2023-11-02 17:14:42	|	2023-11-01 17:14:41

通过ADD_MONTHS()函数

  • 加一个月
select sysdate "当前时间",ADD_MONTHS(sysdate, 1) "加一月" from dual ;

结果

2023-11-02 17:18:31	|	2023-12-02 17:18:31

灵活使用

SELECTSYSDATE "当前时间",ADD_MONTHS (SYSDATE, 1) "加一月",ADD_MONTHS (SYSDATE, - 1) "减一月",ADD_MONTHS (SYSDATE, 1 * 12) "加一年",ADD_MONTHS (SYSDATE, - 1 * 12) "减一年"
FROMdual;

结果:

2023-11-02 17:20:09	2023-12-02 17:20:09	2023-10-02 17:20:09	2024-11-02 17:20:09	2022-11-02 17:20:09

使用INTERVAL函数

语法:INTERVAL ‘时间差数值’ { YEAR | MONTH | DAY | HOUR | MINUTE | SECODE} (精度数值)

得出的是相应类型的时间差,注意精度数值范围是1-9,不写默认值是2,精度不匹配时间差数值会报错
例如:当前时间加1,11,111年

SELECTSYSDATE "当前时间",SYSDATE + INTERVAL '1' YEAR "加1年",          -- 精度数值不写时是默认两位,此处可以写精度为1-9SYSDATE + INTERVAL '11' YEAR "加11年",        -- 此处可以不写,可以是1-9SYSDATE + INTERVAL '11' YEAR(2) "加11年",     -- 可以写2-9SYSDATE + INTERVAL '111' YEAR(3) "加111年",   -- 此处必须写精度,精度值3-9SYSDATE + INTERVAL '111' YEAR (9) "加111年"   -- 精度值可以大于当前精度,不能小于当前数值精度,不能超过9
FROMdual;

结果:

2023-11-02 17:22:22	2024-11-02 17:22:22	2034-11-02 17:22:22	2034-11-02 17:22:22	2134-11-02 17:22:22	2134-11-02 17:22:22

灵活运用

SELECTSYSDATE "当前时间",SYSDATE + INTERVAL '1' YEAR "加一年",SYSDATE + INTERVAL '-1' YEAR "减一年",SYSDATE + INTERVAL '1' MONTH "加一月",SYSDATE + INTERVAL '1' DAY "加一天",SYSDATE + INTERVAL '1' HOUR "加一小时",SYSDATE + INTERVAL '1' MINUTE "加一分钟",SYSDATE + INTERVAL '1' SECOND "加一秒"
FROMdual;

结果

2023-11-02 17:25:31	2024-11-02 17:25:31	2022-11-02 17:25:31	2023-12-02 17:25:31	2023-11-03 17:25:31	2023-11-02 18:25:31	2023-11-02 17:26:31	2023-11-02 17:25:32

精度的使用同上,当然oracle数据库对于时间大小也是有限制的,年份范围是 -4713 和 +9999 之间, 且不为 0

计算两个日期间隔的天数、月数和年数

天数

在Oracle中,两个日期直接相减,便可以得到天数;

select to_date('08/06/2015','mm/dd/yyyy')-to_date('07/01/2015','mm/dd/yyyy') from dual;返回结果:36

月数

计算月数,需要用到months_between函数;

--months_between(date1,date2)   
--如果两个日期中“日”相同,或分别是所在月的最后一天,那么返回的结果是整数。否则,返回的结果将包含一个分数部分(以31天为一月计算)     
select months_between(to_date('01/31/2015','mm/dd/yyyy'),to_date('12/31/2014','mm/dd/yyyy')) "MONTHS" FROM DUAL;      
返回结果: 1    select months_between(to_date('01/01/2015','mm/dd/yyyy'),to_date('12/31/2014','mm/dd/yyyy')) "MONTHS" FROM DUAL;      
返回结果: 0.032258064516129
select abs(trunc(months_between(sysdate , to_date('01/31/2015','mm/dd/yyyy'))))from dual;
select ceil(trunc(months_between(sysdate , to_date('01/31/2015','mm/dd/yyyy'))))from dual;
select floor(trunc(months_between(sysdate , to_date('01/31/2015','mm/dd/yyyy'))))from dual;

年数

计算年数,是通过计算出月数,然后再除以12;(也许会有更好的办法,目前还不知道)

select trunc(months_between(to_date('08/06/2015','mm/dd/yyyy'),to_date('08/06/2013','mm/dd/yyyy'))/12) from dual;--返回结果:2

相关文章:

oracle 日期

日期加减 Oracle中日期进行加减可以使用多种方式,以下介绍三种 一种是针对天的操作,适用于对日,时,分,秒的操作, 一种是对月的操作,适用于月,年的操作, 一种是使用INTER…...

JVM堆内存解析

一、JVM堆内存介绍 Java大多数对象都是存放在堆中,堆内存是完全自动化管理,根据垃圾回收机制不同,Java堆有不同的结构,下面是我们一台生产环境服务器JVM堆内存空间分配情况,JVM只设置了-Xms2048M -Xmx2048M。 1、JVM堆…...

C#Onnx模型信息查看工具

效果 Netron效果 项目 代码 using Microsoft.ML.OnnxRuntime; using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms;namespace Onnx_Demo {public partial class frmMain : Form{public frmMain(){InitializeComponent();}string…...

RK3588 ubuntu系统安装opencv

废话不多说直接上步骤: 先切换至root用户 sudo su 输入密码先更新一下本地软件 apt update apt upgrade 安装相关环境 apt install build-essential cmake git pkg-config libgtk-3-dev \ libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-…...

常用的vue UI组件库

背景:Vue.js 是一个渐进式 javascript 框架,用于构建 UIS(用户界面)和 SPA(单页应用程序)。UI 组件库的出现提高了我们的开发效率,增强了应用的整体外观、感觉、交互性和可访问性,下…...

防范欺诈GPT

去年,ChatGPT的发布让全世界都感到惊讶和震惊。 突然间出现了一个平台,它比之前的任何其他技术都更深入地了解互联网。人工智能可以被训练成像阿姆一样说唱,以世界著名诗人的风格写作,并精确地翻译内容,以至于它似乎能…...

【Java】多线程案例(单例模式,阻塞队列,定时器,线程池)

❤️ Author: 老九 ☕️ 个人博客:老九的CSDN博客 🙏 个人名言:不可控之事 乐观面对 😍 系列专栏: 文章目录 实现安全版本的单例模式饿汉模式类和对象的概念类对象类的静态成员与实例成员 懒汉模式如何保证…...

STM32:使用蓝牙模块

一、蓝牙概要 蓝牙是一种常见的无线通信协议,通常用于短距离通信。蓝牙分为经典蓝牙和低功耗蓝牙(BLE)。经典蓝牙通常用于需要持续传输数据的设备,比如蓝牙耳机等。低功耗蓝牙通常用于只需要间歇性传输数据的设备,比如运动手环。 蓝牙…...

Blazor 虚拟滚动/瀑布流加载Table数据

page "/virtualScrolling" using BlazorApp.Data<h3>Table 虚拟滚动行</h3> <h4>Table 组件显示大数据时通常采用分页加载数据&#xff0c;还有一种虚拟行的技术类似手机滚动到底部时后台自动加载数据</h4><p>快速滚动时显示行占位&am…...

数字化浪潮下,AI数字人融入多元化应用场景

随着AI数字人技术的发展&#xff0c;各个行业都在不断挖掘数字人更多的潜力&#xff0c;VR全景中的AI数字人功能逐渐成为了一种新颖的用户交互方式。AI数字人将企业的文化、品牌价值、商业服务等充分结合为一体&#xff0c;为企业提供了全新的机会&#xff0c;从客户互动到营销…...

JVM虚拟机:JVM的垃圾回收清除算法(GC)有哪些

垃圾回收清除算法 引用计数法 标记清除 拷贝算法 标记压缩 引用计数法 有一个引用指向对象,那么引用计数就加1,少一个引用指向,那么引用计数就减1,这种方法了解一下就好,JVM机会不会使用这种方法,因为它在每次对象赋值的时候都要维护引用计数器,且计数器本身也有一定的…...

我应该删除低质量页面以提高Google排名吗?

为什么考虑删除低质量页面&#xff1f; 上个月&#xff0c;根据Google的搜索团队John Mueller和Gary Illyes在 “Search Off the Record”播客中的讨论&#xff0c;质量是影响搜索的几乎每一个方面的关键因素。 虽然高质量的内容不能保证高排名&#xff0c;但它可以影响Googl…...

【实战Flask API项目指南】之六 数据库集成 SQLAlchemy

实战Flask API项目指南之 数据库集成 本系列文章将带你深入探索实战Flask API项目指南&#xff0c;通过跟随小菜的学习之旅&#xff0c;你将逐步掌握 Flask 在实际项目中的应用。让我们一起踏上这个精彩的学习之旅吧&#xff01; 前言 在上一篇文章中&#xff0c;我们实现了…...

MFC网络通信-Udp服务端

目录 1、UI的布局 2、代码的实现&#xff1a; &#xff08;1&#xff09;、自定义的子类CServerSocket &#xff08;2&#xff09;、重写OnReceive事件 &#xff08;3&#xff09;、在CUdpServerDlg类中处理 &#xff08;4&#xff09;、在OnInitDialog函数中 &#xff0…...

最简单且有效的msvcp140.dll丢失的解决方法,有效的解决msvcp140.dll丢失

在我们使用电脑的过程中&#xff0c;有时会遇到一些令人困扰的问题&#xff0c;如msvcp140.dll文件丢失。对于许多不熟悉这方面技术的小伙伴来说&#xff0c;遇到msvcp140.dll丢失的问题可能会觉得棘手。其实这是一个很常见的问题&#xff0c;并且解决起来并不复杂。接下来将给…...

HBase理论与实践-基操与实践

基操 启动&#xff1a; ./bin/start-hbase.sh 连接 ./bin/hbase shell help命令 输入 help 然后 <RETURN> 可以看到一列shell命令。这里的帮助很详细&#xff0c;要注意的是表名&#xff0c;行和列需要加引号。 建表&#xff0c;查看表&#xff0c;插入数据&#…...

内存管理设计精要

系统设计精要是一系列深入研究系统设计方法的系列文章&#xff0c;文中不仅会分析系统设计的理论&#xff0c;还会分析多个实际场景下的具体实现。这是一个季更或者半年更的系列&#xff0c;如果你有想要了解的问题&#xff0c;可以在文章下面留言。 持久存储的磁盘在今天已经不…...

Java——StringBuffer与StringBuilder的区别

Java——StringBuffer与StringBuilder的区别 StringBuffer和StringBuilder是Java中用于处理字符串的两个类&#xff0c;它们之间的主要区别在于线程安全性和性能方面。 1. 线程安全性&#xff1a; StringBuffer&#xff1a;StringBuffer 是线程安全的&#xff0c;所有的公共方…...

基于深度学习的菠萝与果叶视觉识别及切断机构设计

收藏和点赞&#xff0c;您的关注是我创作的动力 文章目录 概要 一、课题内容二、总体方案确定2.1 方案选择2.2 菠萝的视觉识别流程2.3 菠萝果叶切断机构设计流程 三 基于深度学习的菠萝检测模型3.1 卷积神经网络简介3.2 YOLO卷积神经网络3.3 图像采集与数据制作3.4 数据训练与…...

springboot整合七牛云oss操作文件

文章目录 springboot整合七牛云oss操作文件核心代码&#xff08;记得修改application.yml配置参数⭐&#xff09;maven依赖QiniuOssProperties配置类UploadControllerResponseResult统一封装响应结果ResponseType响应类型枚举OssUploadService接口QiniuOssUploadServiceImpl实现…...

Java基础小知识

一、 计算机基础知识1.计算机硬件的分类&#xff1a;运算器 控制器 存储器 输入设备 输出设备二、cmd命令窗口的基本用法操着&#xff1a; 说明&#xff1a;盘符名称 &#xff1a; 盘符切换。E:回车&#xff0c;表示切换到E盘dir 查看当前路径下的内容cd 目录 进入单级目录。cd…...

(二) 1. Q-learning的遗憾界分析-高效的Q-learning算法

高效的Q-learning算法 1.1. 无模型算法 1.2. UCB算法 1.3. 文献回顾 无模型(Model-free)强化学习算法(如 Q-learning)无需显式地对环境进行建模,而是直接对价值函数或策略进行参数化和更新。与基于模型(Model-based)的方法相比,这类算法通常更简单、更灵活,因此在现代…...

F1C100s移植LVGL 8.2避坑指南:从Makefile修改到双缓冲配置

F1C100s移植LVGL 8.2实战手册&#xff1a;从编译优化到显示性能调优 在嵌入式Linux系统开发中&#xff0c;图形用户界面(GUI)的实现往往是最具挑战性的环节之一。对于资源受限的全志F1C100s芯片而言&#xff0c;如何在有限的RAM和CPU性能下实现流畅的图形交互&#xff0c;LVGL(…...

激光器物理理论模型:从经典到量子,工程师如何选择?

1. 激光器物理理论模型全景概览激光&#xff0c;这束高度相干、单色、定向的光&#xff0c;其诞生与运作背后&#xff0c;是一套极其精密的物理法则。对于从事光电子、激光技术研发&#xff0c;乃至物理研究的工程师和学者而言&#xff0c;理解这些法则的不同描述层次&#xff…...

保姆级教程:用ArcGIS Pro搞定全国30米DEM数据下载与无缝拼接(附避坑指南)

全国30米DEM数据高效处理&#xff1a;ArcGIS Pro全流程实战指南 对于GIS从业者和研究者来说&#xff0c;获取并处理全国范围的数字高程模型(DEM)数据是一项基础但关键的工作。传统方法往往效率低下且容易出错&#xff0c;而ArcGIS Pro凭借其现代化架构和强大工具链&#xff0c;…...

vue3+python基于Django框架的铁路博物馆展览系统的设计与实现67350649

目录同行可拿货,招校园代理 ,本人源头供货商项目背景技术栈核心功能模块关键技术实现部署方案项目亮点项目技术支持源码获取详细视频演示 &#xff1a;同行可合作点击我获取源码->->进我个人主页-->获取博主联系方式同行可拿货,招校园代理 ,本人源头供货商 项目背景 …...

围棋AI训练新境界:5步掌握KaTrain智能陪练核心技巧

围棋AI训练新境界&#xff1a;5步掌握KaTrain智能陪练核心技巧 【免费下载链接】katrain Improve your Baduk skills by training with KataGo! 项目地址: https://gitcode.com/gh_mirrors/ka/katrain 想要在围棋对弈中快速提升水平&#xff1f;KaTrain作为一款基于Kata…...

Spec-Kit + Superpowers 实战:Go语言博客论坛系统的规范驱动开发

从“凭感觉写代码”到“按规范做工程”,一套完整的AI驱动开发方法论落地 一、引言:AI编程的“效率陷阱” 2024年Google DORA报告揭示了一个令人困惑的数据:AI编码助手采用率每提升25%,软件交付稳定性反而下降7.2%。问题出在哪?研究表明,当上下文从1K Token扩展到32K Tok…...

纤维增强复合材料多轴3D打印的神经网络协同优化

1. 纤维增强复合材料与多轴3D打印技术概述纤维增强复合材料&#xff08;Fiber-Reinforced Composites&#xff09;因其独特的力学性能组合——高强度、高刚度和低密度&#xff0c;已成为现代工程设计中不可或缺的材料选择。这类材料由高强度纤维&#xff08;如碳纤维、玻璃纤维…...

Unity WebGL适配微信小游戏全链路指南

1. 为什么Unity WebGL不能直接扔进微信小游戏&#xff1f;——从“能跑”到“能上线”的认知断层很多人第一次尝试把Unity项目导出WebGL再塞进微信小游戏时&#xff0c;都会经历一个相似的困惑&#xff1a;本地浏览器里好好的3D场景&#xff0c;一放进微信开发者工具就白屏、报…...