Oracle 11g 和毫秒精度的存储时间

use*_*461 1 oracle oracle11g

我想创建一个数据库,其中包含有关 moto GP 的统计数据,并且我想存储最快圈速等的时间。我需要存储像分钟:秒:毫秒这样的时间......我该怎么做?

谢谢

Mat*_*Mat 5

您可以使用TIMESTAMP类型。它存储时间的精度高达纳秒精度(默认为微秒)。

请参阅Oracle 内置数据类型

选择一个虚拟年份和日期:

select to_timestamp('00/01/01 01:02:03.123456', 
                    'YY/MM/DD HH24:MI:SS.FF') from dual;
Run Code Online (Sandbox Code Playgroud)

或者你也可以使用INTERVAL类型:

SQL> create table foo (a interval day to second);       
Table created.
SQL> insert into foo values (to_dsinterval('0 01:02:03.123456'));
1 row created.
SQL> select * from foo;

A
---------------------------------------------------------------------------
+00 01:02:03.123456
Run Code Online (Sandbox Code Playgroud)