17:27:27 SQL> select to_char(sysdate,'J') from dual;TO_CHAR
-------
2453279已用时间:  00: 00: 00.72
17:27:44 SQL>

解决方案 »

  1.   

    这样转换出来的是什么东西? 
    select to_char(sysdate,'Jyyyy-mm-dd') from dual
    得到2453279-2004-09-30
      

  2.   

    一楼的大侠我想要的是把julian  date转成公历用to_date试了一下,格式对的但是数据是错的。julian date 是int 类型的如104235  指的是21世纪 第四年的第235天。我这样转换to_date(julian,'J') 出来的日期不对。
      

  3.   

    julian date指的是公元前4712年1月1日起经过的天数.Northwindrocker (北风),我在oracle8.1.7下,to_date(julian,'J') 出来的日期是正确的亚.1. select to_char(sysdate,'Jyyyy/mm/dd') from dual
    >  24532802004/10/012. select to_date(2453280,'J') from dual;
    >  2004/10/01
      

  4.   

    补充一点。oracle的julian date算法使用的是简略化的方法,和其他程序的算法不一样,没用通用性。
    如果你是用别的程序中得到的天数在oracle中转换的话,确实会的不到正确的日期的。
      

  5.   

    谢谢楼上的!你的答案应该是正确的,我用的julian date应该不是以BC4712年的天数,应该是一种简便的julian date 比如104235,1指21世纪,04指第四年,235指这年的第几天!