sql >> データベース >  >> RDS >> Oracle

Oracleのミリ秒単位のタイムスタンプの違い

    Renéの答えを少し拡張すると、合計ミリ秒が必要な場合は、あるタイムスタンプを別のタイムスタンプから減算することによって生成された間隔からすべての要素を抽出して組み合わせる必要があります。

    select doj, systimestamp - doj,
      trunc(1000 * (extract(second from systimestamp - doj)
        + 60 * (extract(minute from systimestamp - doj)
          + 60 * (extract(hour from systimestamp - doj)
            + 24 * (extract(day from systimestamp - doj) ))))) as milliseconds
    from test1;
    
    DOJ                          SYSTIMESTAMP-DOJ     MILLISECONDS
    ---------------------------- ---------------- ----------------
    21-MAR-14 09.25.34.514526000 3 2:9:8.785713          266948785 
    21-MAR-14 09.25.34.520345000 3 2:9:8.779894          266948779 
    22-MAR-14 09.25.34.523144000 2 2:9:8.777095          180548777 
    22-MAR-14 09.25.34.527770000 2 2:9:8.772469          180548772 
    23-MAR-14 09.25.34.532482000 1 2:9:8.767757           94148767 
    23-MAR-14 09.25.34.535603000 1 2:9:8.764636           94148764 
    24-MAR-14 09.25.34.538556000 0 2:9:8.761683            7748761 
    24-MAR-14 09.25.34.541729000 0 2:9:8.75851             7748758 
    

    比較のためにUnixエポック日付を含むSQLFiddle。ただし、サーバーのタイムゾーンに合わせて調整する必要があります。



    1. RDLCLocalReportのExcelへのエクスポートが非常に遅い

    2. 文字列を格納するためにデータ型テキストを使用することの欠点はありますか?

    3. Oracle SQL:列は許可されていません

    4. プール内のJDBC接続を閉じる