Oracle Databaseを使用する場合は、TO_CHAR(datetime)
を使用できます。 分数秒を含む日時値のさまざまな部分を返す関数。
日時の値からFF
を使用します。 フォーマット要素。
例
デモンストレーションの例を次に示します。
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF')
FROM DUAL;
結果:
123456789
FF
に数値を追加して、精度を制限することもできます。 パート:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF5')
FROM DUAL;
結果:
12345
1
にすることができます 9
まで 。
秒の部分を追加
上記の例では、秒の小数部のみを返し、他には何も返しませんでした。
秒の部分と小数秒を含めることができます。これを行うには、SS
を使用します 。 X
も使用できます 基数文字(整数部分と小数部分を区切るために使用される記号)を指定するには:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL;
結果:
37.123456789
独自の基数文字を明示的に指定することもできますが、たとえば、終止符(.
) )、X
format要素は、さまざまな言語/地域間での移植に役立ちます。
上記の例を実行すると、NLS_TERRITORY
パラメータがAUSTRALIA
に設定されました 、その結果、基数文字が終止符になりました。
NLS_TERRITORY
を変更するとどうなりますか GERMANY
へのパラメータ :
ALTER SESSION SET NLS_TERRITORY = 'GERMANY';
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL;
結果:
37,123456789
これで、基数文字はコンマになります。
実際にはNLS_NUMERIC_CHARACTERS
基数文字に使用される文字を指定するパラメーター。ただし、NLS_TERRITORY
を変更する パラメータは、NLS_NUMERIC_CHARACTERS
を暗黙的に変更します パラメータ。 NLS_NUMERIC_CHARACTERS
を明示的に更新することもできます 必要に応じてパラメータ。この場合、NLS_TERRITORY
パラメータは変更されません。
日時値のフォーマットに使用できるフォーマット要素の完全なリストについては、Oracleの日時フォーマット要素のリストを参照してください。