PostgreSQL:将时间戳转换为时间 - 或仅从时间戳列中检索时间

时间:2014-04-03 11:15:18

标签: postgresql

我想要的是与此相同的东西:

select to_time( to_timestamp ( '03.04.2014 12:34:00', 'DD.MM.YYYY HH24:MI:SS' ) )

这里的问题是to_time不存在。我希望这会导致

12:34:00 (without the date)

这可能吗?

1 个答案:

答案 0 :(得分:17)

select timestamp '2014-04-03 12:34:00'::time

我更喜欢ANSI日期/时间戳文字,因为它们比to_timestamp()

更短

以上相当于:

select to_timestamp ('03.04.2014 12:34:00', 'DD.MM.YYYY HH24:MI:SS')::time

::time是Postgres'铸造价值的简写符号。

如果您需要,以下内容将是完整的ANSI SQL:

select cast(timestamp '2014-04-03 12:34:00' as time)