oracle 数据库 日期时间整理

2023-05-16

oracle 数据库 日期时间整理

一:日期格式

1)年:YYYY或yyyy (可以截取1-4位)

select to_char(sysdate, 'yyyy') from dual; --2017

select to_char(sysdate, 'yy') from dual; --17

2)月:mm   数字显示月份 1-12  select to_char(sysdate, 'mm') from dual;   --12

mon或month  字符集显示:(对于英文前者简写,后者全拼)

select to_char(sysdate, 'mon') from dual;  --12月/Dec

select to_char(sysdate, 'month') from dual;  --12月/December

3)日:dd 当月第几天 select to_char(sysdate, 'dd') from dual;  --05

ddd 当年第几天 select to_char(sysdate, 'ddd') from dual;  --339

dy 星期几:简写select to_char(sysdate, 'dy') from dual;  --星期二/Tues

day星期几:全拼select to_char(sysdate, 'day') from dual;  --星期二/Tuesday

4)时:hh 小时1-12 hh24 小时 1-24

select to_char(sysdate, 'hh') from dual; 

select to_char(sysdate, 'hh24') from dual; 

5)分:mi  分钟 0-59 select to_char(sysdate, 'mi') from dual; 

6)秒:ss  秒钟  0-59 select to_char(sysdate, 'ss') from dual; 

7)季度: Q  1-4:春夏秋冬   select to_char(sysdate, 'Q') from dual;  (不区分Q大小写)

8)当月第几周  W   select to_char(sysdate, 'W') from dual;(不区分W大小写)

9)当年第几周  WW   select to_char(sysdate, 'WW') from dual; (不区分WW大小写)


二:日期字符串转换

1)日期转字符串:根据上面的to_char可以获取对应位置的值

select to_char(日期, 格式) from dual;

2)字符串转日期:字符串格式需要能够转换为日期,前后格式并没有关联

select to_char(字符串, 格式) from dual; select to_date('2017/09/12', 'yyyy-mm-dd') from dual; 


三:日期相关转换

1)trunc( ):函数截取,返回对应的日期利用trunc( )截取很容易获取某年、月对应的第一天或者最后一天(-1)

select trunc(sysdate, 'mm') from dual;  根据日期格式多对应的位置截取返回当月第一天

2)floor( ):计算日期相隔天数:在进行加减时会转换为数字进行计算,所以取结果进行取整即可

select floor(sysdate - to_date('20171031','YYYYMMDD')) from dual; --直接取整

select round(sysdate - to_date('20171031','YYYYMMDD'),0) from dual;--保留0位小数

3)months_between( ) :计算两个日期间隔月数,获取的是精确值,根据需要取精度

select months_between( to_date('20171101','yyyymmdd'),to_date('20171105','yyyymmdd')) from dual也可以使用months_between()来计算相隔天数,结果乘以31得到相隔天数(每个月按31天算)

select months_between( to_date('20171101','yyyymmdd'), to_date('20171105','yyyymmdd'))*31 from dual

4)next_day( ):函数求下一个星期几对应的日期(周日为第一天:1-7,或者输入对应)

select next_day(sysdate,5) from dual; --返回下个周四日期

select next_day(sysdate,'星期一') from dual;--返回下个周一日期(如果字符集为中文,则无法输入英文全、简称)

5)add_months( ):增加或者减去多少个月份,并不存在对应的add_days/years,在进行日期加减时可以直接加上或者

减去对应的天数,在进行年份加减时可以使用add_months(日期,n*12) 来进行年份加减

select sysdate+1 from dual; --日期加减

select add_months(sysdate,1) from dual; --月份加减

select add_months(sysdate,1*12) from dual;  --可以看做年份加减

6)extract(year|month|... from 日期):截取对应位置值(数字)

select extract(month from sysdate) month from dual;  --12


对与日期的一些计算无非就是将上面几种函数搭配起来获取所需的结果






本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

oracle 数据库 日期时间整理 的相关文章

随机推荐

  • VMware安装Centos7系统(命令行模式)

    文章目录 一 准备软件 系统镜像二 创建新虚拟机三 安装CentOS7系统四 配置固定IP便于远程管理 一 准备软件 系统镜像 软件 xff1a VMware 14 镜像 xff1a CentOS7 镜像官网下载地址 xff1a http
  • mariadb(mysql)数据库字符集设置(二)(centos7)

    mariadb xff08 mysql xff09 数据库在存储数据时 xff0c 默认编码为latinl xff0c 当存储数据为中文字符时 xff0c 在显示或者web调用时会显示为乱码 xff0c 为解决该乱码问题 xff0c 需修改
  • 「第四范式」2023届-秋季校园招聘正式启动!

  • ubuntu安装chrome报错libnss3

    1 下载官网提供的最新版本 xff08 注意区分32位和64位 xff09 2 进入到文件所在路径 xff0c 执行安装命令 xff1a cd Downloads Downloads sudo dpkg i google chrome st
  • 16-命令模式Quarkus实现

    摘要 xff1a 本文用一个实例场景描述Gof 23设计模式中的命令 xff08 Command xff09 模式 xff0c 并用Quarkus框架代码给予实现 xff0c 同时也给出实现代码的UML模型 关键字 xff1a Gof 23
  • ubuntu16.04设置root用户登陆图形界面的方法

    因为 ubuntu 默认不能使用root登录图形界面 xff0c 且Ubuntu默认的是root用户不能登录图形界面的 xff0c 只能以其他用户登录图形界面 这样就很麻烦 xff0c 因为权限的问题 xff0c 不能随意复制删除文件 xf
  • 详解MariaDB数据库的存储过程

    1 什么是存储过程 很多时候 xff0c SQL语句都是针对一个或多个表的单条语句 但是也有时候有的查询语句需要进行多次联表查询才能完成 xff0c 此时就需要用到存储过程了 存储过程 xff08 Stored Procedure xff0
  • Tensorflow读取数据--TFrecord格式

    一 什么是Tfrecord xff1f TFRecords可以允许你讲任意的数据转换为TensorFlow所支持的格式 xff0c 这种方法可以使TensorFlow的数据集更容易与网络应用架构相匹配 这种建议的方法就是使用TFRecord
  • kafka架构、producer及consumer流程图

    1 kafka架构 xff1a 2 producer流程 xff1a 3 consumer流程 xff1a
  • Ubuntu18.04下安装OpenCv依赖包libjasper-dev

    问题 Ubuntu18 4下使用sudo apt get install libjaster dev安装包时提示找不到这个包 解决办法 终端中输入以下代码即可解决 span class token function sudo span ad
  • Nginx应用知识汇总

    一 Nginx是什么 xff1f Nginx engine x 是一个高性能的HTTP和反向代理web服务器 Nginx是一款轻量级的Web 服务器 反向代理服务器及电子邮件 xff08 IMAP POP3 xff09 代理服务器 xff0
  • JAVA学习代码——txt写入学生信息

    涉及 xff1a list的使用和遍历 文件的读 循环控制语句的使用 文件操作类 xff1a FileOperation package file import java io BufferedReader import java io B
  • 怎样把WORD中的错误一次性全部忽略

    1 审阅 选项 拼写和语法 点击全部忽略 2 或者打开word选项 校对 将键入时检查拼写勾选项去掉 xff0c 或者勾选下面的两项例外项 xff0c 不显示拼写和语法错误 xff0c 确定 这样就不会再检查你的拼写 xff0c 不用忽略了
  • 知识图谱前沿技术课程(华东师范大学站)

    知识图谱表达了各类实体 概念及其之间的各种语义关系 xff0c 成为了大数据时代知识表示的主要形态之一 知识图谱是目前人工智能领域的一个重要支撑 xff0c 已经在诸如智能问答 搜索 推荐等具体领域得到很好的应用 华东师范大学计算机应用研究
  • Win10白色图标制作及替换

    win10白色图标制作 xff1a 一 软件准备 IcoFX xff1a 提取图标 生成图标 Photoshop xff1a 修改编辑图标 二 制作步骤 1 提取图标 打开IcoFX xff0c 直接在桌面上选择快捷方式 xff0c 拉拽以
  • Java中输出当前时间的各种方法

    import java text import java util class Example public static void main String args TimeZone setDefault TimeZone getTime
  • VMware无法打开已存在虚拟机vmx文件解决办法

    复制过来的虚拟机文件 在 VMware 无法直接打开 xff08 文件 打开 无反应 xff09 解决办法 xff1a 1 首先打开vmx文件 xff0c 将ios路径设置正确 2 将虚拟机进程关闭 3 在文件管理器中右键vmx文件 xff
  • 使用cmd命令行查看wifi密码

    1 xff1a 在命令行输入下面命令 xff0c 查询本机存储WIFI xff1a netsh wlan show profiles 2 xff1a 输入下面命令查询WIFI密码 xff0c 第二张图显示的就是WIFI密码 netsh wl
  • Kettle 7.1 资源库配置&&无法配置资源库&&自定义配置文件路径

    资源库配置 1 kettle 7 1 资源库配置在左上角的Connect 2 点击Connect xff0c 弹出默认资源库 xff1a Pentaho Repository 3 在弹出窗口选择other Repositories 选择对应
  • oracle 数据库 日期时间整理

    oracle 数据库 日期时间整理 一 xff1a 日期格式 1 xff09 年 xff1a YYYY或yyyy xff08 可以截取1 4位 xff09 select to char sysdate 39 yyyy 39 from dua