如何从Oracle SQL Developer中的DateTime字段中仅提取时间?

时间:2013-06-14 08:38:32

标签: oracle datetime oracle-sqldeveloper

我为SQL Developer尝试了To_Timestamp和其他方法,但只有这个方法适合我。

Select To_Number(To_Char(DateTime_FieldName, 'HH24'))
    || ':' || to_number(to_char(DateTime_FieldName, 'MI'))
    || ':' ||to_number(to_char(DateTime_FieldName, 'SS'))
from TABLE_NAME

有更好的解决方案吗?

1 个答案:

答案 0 :(得分:31)

假设您的目标是生成一个表示时间的字符串(即使发出无关的to_number次调用,您发布的查询返回的内容)

SELECT to_char( <<column_name>>, 'HH24:MI:SS' )
  FROM table_name

如果要返回其他数据类型,则需要告诉我们要返回的数据类型。例如,如果您确实想要返回INTERVAL DAY TO SECOND

SELECT numtodsinterval( <<column name>> - trunc(<<column name>>), 'day' )
  FROM table_name