2011-01-05 18 views
3

TIMESTAMPの小数部を6桁でフォーマットしようとしています。 'FF'は、私が明示的にTIMESTAMP(6)宣言した場合でも、利用可能なすべての数字を印刷するようだ:フォーマット精度が一定のタイムスタンプ

DECLARE 
    t TIMESTAMP(6); 
BEGIN 
    t := SYSTIMESTAMP; 
    dbms_output.put_line(TO_CHAR(t, 'FF')); 
END; 

プリント
912387000

SUBSTRINGまたは類似のものを使用せず(代わりに
912387
を取得する方法はあります)?

答えて

4

はいそれは 'FF6' を使用することによって、可能です:ここで

SQL> DECLARE 
    2  t TIMESTAMP(6); 
    3 BEGIN 
    4  t := SYSTIMESTAMP; 
    5  dbms_output.put_line(TO_CHAR(t, 'FF')); 
    6  dbms_output.put_line(TO_CHAR(t, 'FF6')); 
    7 END; 
    8/
234771000 
234771 

PL/SQL procedure successfully completed. 

は、ドキュメントへのリンクです:http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/sql_elements004.htm#r16c1-t64

よろしく、 ロブ。

+0

ありがとうRob、まさに私が必要なもの:) –

関連する問題