PostgreSQL中的日期格式

时间:2018-08-30 17:44:05

标签: sql postgresql

我想将日期转换为特定格式并从时间中减去2小时:

./a.out

预期输出:

date 
2018-06-07 23:37:10

我尝试过,但是出现以下错误:

  

错误:运算符不存在:文本-interval,可能需要添加显式类型强制转换。

1 个答案:

答案 0 :(得分:5)

您可以尝试像这样使用TO_CHAR()

SELECT TO_CHAR('2018-06-07 23:37:10'::TIMESTAMP - INTERVAL '2 HOURS', 'DDMonYYYY HH24:MI:SS')

(如Oto Shavadze建议更改为HH24:MI)

Here是如何在将来需要时创建模式的参考

请记住,转换后值的类型将为text,因此您将无法执行其他任何与日期相关的功能(必须在TO_CHAR()之前执行)。