PostgreSQL to_timestamp函数

时间:2016-10-18 19:53:02

标签: sql postgresql

这是我给出的查询和我得到的错误消息。我不知道问题是什么,因为我的朋友有相同版本的Postgres(8.3),这个查询与这个系统完美配合,但不是我的。 (完全相同的数据库名称和表格)我希望有人在这里有解决方案。

查询:

select 
   * 
from 
   isonis_data
where 
   to_timestamp( vrijeme_upisa , 'dd.MM.yyyy. HH:mm:ss') 
   between 
     '15.09.2015.' 
   and  
     '18.10.2016.'

错误讯息:

  

错误:日期/时间字段值超出范围:" 15.09.2015。"
  提示:也许你需要一个不同的" datestyle"设置。

我该怎么办?

1 个答案:

答案 0 :(得分:0)

正如克林所指出的那样,你必须使用 MI 而不是 MM 几分钟。

如果您想保留当前的格式,可以使用to_date转换日期。

select * 
from isonis_data where to_timestamp(vrijeme_upisa, 'DD.MM.YYYY. HH:MI:SS') between to_date('15.09.2015.', 'DD.MM.YYYY.') and to_date('18.10.2016.', 'DD.MM.YYYY.');