4

以下は、日付であると想定されるデータのサンプル セットです。どのような形式にするべきかわかりませんが、ユリウス日だと言われました。

     DATE
    92017
    92320
    99002
    99003
    112010
    112011
    112012
    112013

誰でもそれらをオラクルの日付に変換できますか? 私は試した

select to_date(DATE,'J') from dual

しかし、一部の結果は 1950 年代と 1940 年代のものであり、私たちが扱っているデータには適切ではありません。私はここでそれをやっていますか?

このリンクからこの式も試しました:http://www.kirix.com/stratablog/jd-edwards-date-conversions-cyyddd

SELECT 
TO_DATE(1900+(DATE/1000),1,1)+
TO_NUMBER(SUBSTR(TO_CHAR(DATE),4))-1  FROM DUAL;

ありがとう

4

4 に答える 4

5

-- DATE が数値の場合、JD Edwards 日付変換を使用する

select to_date(to_char(1900 + floor(DATE / 1000)),'YYYY') + mod(DATE,1000) - 1 from dual;

-- DATE が文字列の場合、JD Edwards 日付変換を使用する

select to_date(to_char(1900 + floor(to_number(DATE) / 1000)),'YYYY') + mod(to_number(DATE),1000) - 1 from dual;
于 2014-07-10T03:41:11.433 に答える