当前位置:  数据库>oracle

Oracle 将天数(1-366)转换为日期

    来源: 互联网  发布时间:2017-04-03

    本文导语: //在平时的应用中,我们很多地方都使用了日期函数to_date()   //但是我们对日期函数的格式知道得很少,或者说我们根本就不会去研究它   //然而,知道日期格式是多么的重要   //下面是一个具体的应用:   //有一张表,有年...

//在平时的应用中,我们很多地方都使用了日期函数to_date()  
//但是我们对日期函数的格式知道得很少,或者说我们根本就不会去研究它  
//然而,知道日期格式是多么的重要  
//下面是一个具体的应用:  
//有一张表,有年字段year,时期字段type,期数term,如下  
ID  year  type  term  
---------------------  
1   2010   R     1  
2   2010   R     2  
. . . .  
. . . .  
N   2010   R    365  
//结果:  
id   year  type  term  
----------------------  
1   2010    R   2010-01-01  
. . . .  
. . . .   
N   2010    R   2010-12-31  
//分析:  
//这是将天数转换为日期,我们平时接触到的基本上都是字符串的日期转换为日期格式,  
//这还是将天数转换为日期,确实有点困难;  
//不过,好在Oracle人员在设计to_date函数时已经考虑到了这个问题,  
//所以我们不必要担心,查询一下to_date函数的format格式,  
//发现一个format参数表示将在[1-366]区间的数转换为日期的格式:  
//DDD   Day of year (1-366).  
//下面是具体的解法:  
with t as(  
     select 1 id,'2000' year, 'R' type, 1 term from dual union all   
     select 2,'2000', 'R', 58 from dual union all   
     select 3,'2010', 'R', 59 from dual union all   
     select 4,'2010', 'R', 60 from dual union all   
     select 5,'2011', 'R', 128 from dual union all   
     select 6,'2011', 'R', 129 from dual union all   
     select 7,'2001', 'R', 130 from dual union all   
     select 8,'2005', 'R', 365 from dual union all   
     select 9,'2008', 'R', 366 from dual)  
select id,  
       year,  
       type,  
       term,  
       to_char(to_date(year||term,'yyyyddd'),'yyyy-mm-dd') ymd  
from t;  
        ID YEAR TYPE       TERM YMD  
---------- ---- ---- ---------- ----------  
         1 2000 R             1 2000-01-01  
         2 2000 R            58 2000-02-27  
         3 2010 R            59 2010-02-28  
         4 2010 R            60 2010-03-01  
         5 2011 R           128 2011-05-08  
         6 2011 R           129 2011-05-09  
         7 2001 R           130 2001-05-10  
         8 2005 R           365 2005-12-31  
         9 2008 R           366 2008-12-31 





















































    
 
 

您可能感兴趣的文章:

  • 在oracle里如何将String转换成Date?????
  • 请问:ORACLE中的数据取出来后,需不需要进行一定的转换才能变为C语言的数据类型啊?
  • ORACLE 毫秒与日期的相互转换示例
  • 用java怎样实现oracle数据库表和excel数据表的转换
  • Oracle与FoxPro两数据库的数据转换步骤
  • oracle SCN跟TIMESTAMP之间转换
  • Oracle下时间转换在几种语言中的实现
  • 关于tomcat4.0.1+JDK1.3+ORACLE+JDBC中字符编码的转换问题。
  • MySQL转换Oracle的需要注意的七个事项
  • MySQL数据库向Oracle转换时注意若干问题
  • Oracle Number型数值存储与转换的实现详解
  • 讲解Oracle中的Clob与String类型转换
  • 将mysql转换到oracle必须了解的50件事
  • oracle中to_date详细用法示例(oracle日期格式转换)
  • ORACLE常用数值函数、转换函数、字符串函数
  • Oracle CBO几种基本的查询转换详解
  • Oracle to_char 日期转换字符串语句分享
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • ORACLE日期相关操作
  • 用JDBC连接Oracle数据库时,如何向数据库中写日期型数据(格式)?谢了!
  • jsp中在oracle中查询日期类型时sql语句该怎么写啊?
  • Oracle插入日期数据常见的2个问题和解决方法
  • 怎样往oracle数据库里存日期型数据?
  • Oracle中查询本月星期5的所有日期列表的语句
  • 关于oracle日期显示的问题
  • Oracle最大日期获取方法
  • 有关java.sql.ResultSet 利用SetDate往 oracle 中插入时间和日期的问题!!
  • Oracle 日期的一些简单使用
  • 日期时间型,用setString写入oracle中,高手请进
  • oracle日期时间型timestamp的深入理解
  • oracle使用to_date查询一周的第一天日期
  • Oracle 获取上周一到周末日期的查询sql语句
  • Oracle日期函数简介
  • Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页
  • oracle查看当前日期是第几个星期的方法
  • Oracle日期函数知识整理
  • oracle 日期时间函数使用总结
  • Oracle关于时间/日期的操作
  • oracle 日期函数集合(集中版本)第1/2页
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 用java怎样实现oracle数据库表和excel数据表的转换 iis7站长之家
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3