oracle日期函数及相关查询日期所用的函数

2024-05-04 17:08

本文主要是介绍oracle日期函数及相关查询日期所用的函数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、查询本周一和本周日  

select to_date(next_day(sysdate-7,2)) 周一, to_date(next_day(sysdate,1)) 周日 from dual;

2、查询  去年的今天 

SELECT  ADD_MONTHS(to_date(&mytime,'yyyymmdd'), -12) AS "当前时间减一年" FROM dual;

3、相关日期函数

--months_between(date1,date2) 返回date1和date2 之间 间隔多少个月
select months_between(sysdate, to_date('20140202','yyyymmdd')) from dual  --1.31695191158901--add_months(date,number)  指定的日期上增加number 个月
select  add_months(sysdate,1) from  dual   --2014-4-11 19:42:33--last_day(date)   返回日期date 所在月的最后一天select last_day(sysdate) from dual  --2014-3-31 19:44:31-- next_day(day,'day')  下一个星期一  日  
select sysdate  from  dual  --当前日期  2014-3-11 19:28:05select to_char(current_timestamp,'yyyymmdd hh24:mi:ss') from dual   -- 11-3月 -14 07.28.32.150101 下午 +08:00select next_day(sysdate,'星期二') from  dual  --2014-3-18 19:27:16   今天就是星期二select next_day(sysdate,'星期日') from  dual-- 2014-3-16 19:27:37--extract(c1 from d1)  从日期d1中抽取c1指定的年月日时分秒。
select extract(year from date'2011-05-17') year from dual;    --2011select extract(month from date'2011-05-17') month from dual;    --5select extract(day from date'2011-05-17') day from dual;    --17-- 获取两个日期之间的具体时间间隔,extract函数是最好的选择   -- 时间间隔的情况下 只能 算到天  无法再 加到月上。
select  extract(day from dt2-dt1) day   ,extract(hour from dt2-dt1) hour   ,extract(minute from dt2-dt1) minute   ,extract(second from dt2-dt1) second   
from (   select to_timestamp('2011-02-04 15:07:00','yyyy-mm-dd hh24:mi:ss') dt1   ,to_timestamp('2011-05-17 19:08:46','yyyy-mm-dd hh24:mi:ss') dt2   from dual)    select extract(year from systimestamp) year   ,extract(month from systimestamp) month   ,extract(day from systimestamp) day   ,extract(minute from systimestamp) minute   ,extract(second from systimestamp) second   ,extract(timezone_hour from systimestamp) th   ,extract(timezone_minute from systimestamp) tm   ,extract(timezone_region from systimestamp) tr   ,extract(timezone_abbr from systimestamp) ta   
from dual    





http://oracle.chinaitlab.com/induction/817947.html

加法select sysdate,add_months(sysdate,12) from dual;        --加1年select sysdate,add_months(sysdate,1) from dual;        --加1月select sysdate,to_char(sysdate+7,'yyyy-mm-dd HH24:MI:SS') from dual;   --加1星期select sysdate,to_char(sysdate+1,'yyyy-mm-dd HH24:MI:SS') from dual;   --加1天select sysdate,to_char(sysdate+1/24,'yyyy-mm-dd HH24:MI:SS') from dual;  --加1小时select sysdate,to_char(sysdate+1/24/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --加1分钟select sysdate,to_char(sysdate+1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --加1秒减法select sysdate,add_months(sysdate,-12) from dual;        --减1年select sysdate,add_months(sysdate,-1) from dual;        --减1月select sysdate,to_char(sysdate-7,'yyyy-mm-dd HH24:MI:SS') from dual;   --减1星期select sysdate,to_char(sysdate-1,'yyyy-mm-dd HH24:MI:SS') from dual;   --减1天select sysdate,to_char(sysdate-1/24,'yyyy-mm-dd HH24:MI:SS') from dual;  --减1小时select sysdate,to_char(sysdate-1/24/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --减1分钟select sysdate,to_char(sysdate-1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --减1秒Oracle关于时间/日期的操作1.日期时间间隔操作当前时间减去7分钟的时间select sysdate,sysdate - interval '7' MINUTE from dual当前时间减去7小时的时间select sysdate - interval '7' hour from dual当前时间减去7天的时间select sysdate - interval '7' day from dual当前时间减去7月的时间select sysdate,sysdate - interval '7' month from dual当前时间减去7年的时间select sysdate,sysdate - interval '7' year from dual时间间隔乘以一个数字select sysdate,sysdate - 8 *interval '2' hour from dual2.日期到字符操作select sysdate,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dualselect sysdate,to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dualselect sysdate,to_char(sysdate,'yyyy-ddd hh:mi:ss') from dualselect sysdate,to_char(sysdate,'yyyy-mm iw-d hh:mi:ss') from dual参考oracle的相关关文档(ORACLE901DOC/SERVER.901/A90125/SQL_ELEMENTS4.HTM#48515)3. 字符到日期操作select to_date('2003-10-17 21:15:37','yyyy-mm-dd hh24:mi:ss') from dual具体用法和上面的to_char差不多。4. trunk/ ROUND函数的使用select trunc(sysdate ,'YEAR') from dualselect trunc(sysdate ) from dualselect to_char(trunc(sysdate ,'YYYY'),'YYYY') from dual5.oracle有毫秒级的数据类型--返回当前时间 年月日小时分秒毫秒select to_char(current_timestamp(5),'DD-MON-YYYY HH24:MI:SSxFF') from dual;--返回当前 时间的秒毫秒,可以指定秒后面的精度(最大=9)select to_char(current_timestamp(9),'MI:SSxFF') from dual;6.计算程序运行的时间(ms)declaretype rc is ref cursor;l_rc rc;l_dummy all_objects.object_name%type;l_start number default dbms_utility.get_time;beginfor I in 1 .. 1000loopopen l_rc for'select object_name from all_objects '||'where object_id = ' || i;fetch l_rc into l_dummy;


这篇关于oracle日期函数及相关查询日期所用的函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/959693

相关文章

PostgreSQL中rank()窗口函数实用指南与示例

《PostgreSQL中rank()窗口函数实用指南与示例》在数据分析和数据库管理中,经常需要对数据进行排名操作,PostgreSQL提供了强大的窗口函数rank(),可以方便地对结果集中的行进行排名... 目录一、rank()函数简介二、基础示例:部门内员工薪资排名示例数据排名查询三、高级应用示例1. 每

全面掌握 SQL 中的 DATEDIFF函数及用法最佳实践

《全面掌握SQL中的DATEDIFF函数及用法最佳实践》本文解析DATEDIFF在不同数据库中的差异,强调其边界计算原理,探讨应用场景及陷阱,推荐根据需求选择TIMESTAMPDIFF或inte... 目录1. 核心概念:DATEDIFF 究竟在计算什么?2. 主流数据库中的 DATEDIFF 实现2.1

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

从入门到精通MySQL联合查询

《从入门到精通MySQL联合查询》:本文主要介绍从入门到精通MySQL联合查询,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下... 目录摘要1. 多表联合查询时mysql内部原理2. 内连接3. 外连接4. 自连接5. 子查询6. 合并查询7. 插入查询结果摘要前面我们学习了数据库设计时要满

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

MySQL查询JSON数组字段包含特定字符串的方法

《MySQL查询JSON数组字段包含特定字符串的方法》在MySQL数据库中,当某个字段存储的是JSON数组,需要查询数组中包含特定字符串的记录时传统的LIKE语句无法直接使用,下面小编就为大家介绍两种... 目录问题背景解决方案对比1. 精确匹配方案(推荐)2. 模糊匹配方案参数化查询示例使用场景建议性能优

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE