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

日期函数(mysql和oracle)

mysql实现

current_date():返回当前日期,格式为 YYYY-MM-DD,在 MySQL 中用于获取当前系统日期。
date_sub(date, interval expr unit):对指定日期进行减法运算,date 是要操作的日期,expr 是间隔值,unit 是间隔单位(如 month 表示月)。例如 date_sub(current_date(), interval 3 month) 就是将当前日期往前推 3 个月。
date_format(date, format):按照指定的格式 format 格式化日期 date。比如 date_format(current_date(), '%Y-%m-01') 是将当前日期格式化为 “年 - 月 - 01” 的形式,获取当月第一天;date_format(..., '%Y%m%d') 则是格式化为 “年月日” 的字符串形式。
起始日期:date_sub(current_date(), interval 3 month) → 当前日期往前推 3 个月,并格式化为 “年 - 月 - 01”(如 2024-06-01)。
结束日期:date_sub(date_format(current_date(), '%Y-%m-01'), interval 1 day) → 当月 1 号往前推 1 天(即上个月最后一天),格式化为 “年 - 月 - 日”(如 2024-08-31)

image

Oracle 中对应的实现

获取当前日期:用 SYSDATE 函数。
日期减法:可以用 ADD_MONTHS 函数,例如 ADD_MONTHS(SYSDATE, -3) 实现当前日期往前推 3 个月。
日期格式化:用 TO_CHAR 函数,比如 TO_CHAR(SYSDATE, 'YYYY-MM-DD') 格式化日期。

  1. trunc(sysdate, 'Q'):获取当前季度的第一天
    sysdate:Oracle 函数,返回当前系统日期(如 2024-09-09)。
    trunc(date, 'Q'):对日期进行截断,'Q' 表示 “按季度截断”,结果为当前日期所在季度的第一天。
    例:若当前是 2024-09-09(属于 2024 年第 3 季度,7-9 月),则 trunc(sysdate, 'Q') 结果为 2024-07-01。
    若当前是 2024-02-15(属于第 1 季度,1-3 月),结果为 2024-01-01。
  2. trunc(sysdate, 'Q') - 1:获取上一季度的最后一天
    对 “当前季度第一天” 减 1 天,得到 “上一季度最后一天”。
    例:当前季度第一天是 2024-07-01,减 1 天后为 2024-06-30(2024 年第 2 季度最后一天)。
    若当前季度第一天是 2024-01-01,减 1 天后为 2023-12-31(2023 年第 4 季度最后一天)。
  3. to_char(..., 'YYYYMMDD'):将日期转换为字符串格式
    to_char(date, 'YYYYMMDD'):把日期类型转换为 YYYYMMDD 格式的字符串(如 20240630)。
    目的:假设 WORKDATE 字段在表中存储为字符串类型(如 '20240630'),通过转换保证两边格式一致,才能正确比较。
http://www.agseo.cn/news/1134/

相关文章:

  • 图灵因果测试是由本框架(ECT-OS-JiuHuaShan)定义的下一代智能评估范式
  • QOJ 5357 芒果冰加了空气
  • AI智能体(Agent)开发实战:工业级项目案例驱动课
  • 易路联合智享会权威发布,2025《AI技术如何重构人才获取全链路》
  • java 开发中VO、PO、DO、DTO、BO、QO、DAO、POJO
  • Typora--Markdown语法
  • Perfetto数据流架构故障分析:带你研究 trace 为何丢失
  • 记一次 .NET 某中医药附属医院门诊系统 崩溃分析
  • 个人使用IDEA经验总结
  • JDK 24软件介绍
  • 【LangChain 核心模块 01】
  • 数据跨境学习笔记
  • NOIP 模拟赛十三
  • PageHelper
  • MathType7 功能分析
  • 低版本 Linux【16.04】如何安装 claude code
  • Redis数据持久化方案与集群部署
  • 什么,以太网能传CAN报文?
  • 物业管理小程序系统介绍
  • 阿里云文件上传oss存储
  • 快照同步思想
  • Windows-系统自动切换IPv4地址
  • 目录导航
  • sql嵌套查询
  • archlinux gnome48 顶部托盘选择
  • AT_agc014_f [AGC014F] Strange Sorting
  • JS常用函数
  • 第8章 STM32CUBE LCD配置和测试
  • git ssh key配置
  • Git的使用方法