postgresql踩坑系列之关于to_date()问题

 更新时间:2023年03月21日 08:55:43   作者:Sokasa_BiuBiuBiu  
这篇文章主要介绍了postgresql踩坑系列之关于to_date()问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

postgresql关于to_date()问题

这里是对postgresql 使用时踩的坑的记录

上图来一波官方文档

官方文档地址 : https://www.postgresql.org/docs/8.1/functions-formatting.html

PostgreSQL文档地址 https://www.postgresql.org/docs/8.1/functions-formatting.html

1.to_date(text,text), 在PostgreSQL 里 也是将字符串转换成日期, 但是 仅仅是年月日部分,就算我们在方法里指定了格式亦是如此

比如:

select to_date('2019-01-15 18:33:41','yyyy-MM-dd hh24:mi:ss');

结果就是

2019-01-15

没看错,就是这玩意。因此如果在项目里使用 这函数去对日期操作,比如 查询某日某时某点某秒之前的访问数据量,当入参正确,那么计算很有可能是错误的。因为时分秒 没了,会自动隐式转换成 2019-01-15 00:00:00。和这数据比较,那么15号这天的数据都是不存在的。

而正确的使用姿势应该是:

select to_timestamp('2019-01-15 18:33:41','yyyy-MM-dd hh24:mi:ss')

结果就是

2019-01-15 18:33:41+00

后面的+00 就是计算时区的意思,00不计算。 这方法就是将字符串按照指定格式转换成不带时区(timestamp with time zone)的日期。

因此,在使用PostgreSQL进行日期相关操作的时候如果没有特殊要求尽量使用to_timestamp(text,text) 方法去进行操作。

postgresql中to_date()函数使用

问题

错误:数 to_date(timestamp without time zone, unknown) 不存在 Hint: 没有匹配指定名称和参数类型的函数. 您也许需要增加明确的类型转换.

原来的使用方式是:

to_date(createddate,'YYYY-MM-DD')  

解决方式

方法一:

to_date(createddate::text,'YYYY-MM-DD')  

**方法二:**

to_date(cast(createddate as TEXT),'YYYY-MM-DD') 

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • PostgreSQL实现定期备份的方法

    PostgreSQL实现定期备份的方法

    PostgreSQL定期备份功能可以自动备份数据库,避免了手动备份过程中可能发生的错误,也极大地减轻了管理员的工作压力,所以本文将给大家介绍一下PostgreSQL实现定期备份的方法,需要的朋友可以参考下
    2024-03-03
  • PostgreSQL 中字段类型varchar的用法

    PostgreSQL 中字段类型varchar的用法

    这篇文章主要介绍了PostgreSQL 中字段类型varchar的用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 基于PostgreSQL和mysql数据类型对比兼容

    基于PostgreSQL和mysql数据类型对比兼容

    这篇文章主要介绍了基于PostgreSQL和mysql数据类型对比兼容,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • PostgreSQL 数据库跨版本升级常用方案解析

    PostgreSQL 数据库跨版本升级常用方案解析

    这篇文章主要介绍了PostgreSQL 数据库跨版本升级常用方案解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • PGSQL实现判断一个空值字段,并将NULL值修改为其它值

    PGSQL实现判断一个空值字段,并将NULL值修改为其它值

    这篇文章主要介绍了PGSQL实现判断一个空值字段,并将NULL值修改为其它值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • 聊聊PostgreSql table和磁盘文件的映射关系

    聊聊PostgreSql table和磁盘文件的映射关系

    这篇文章主要介绍了聊聊PostgreSql table和磁盘文件的映射关系,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • PostgreSQL查看数据库占用空间大小的几种常用方法

    PostgreSQL查看数据库占用空间大小的几种常用方法

    在PostgreSQL中,查看数据库及数据表当前数据的占用量可以通过执行特定的SQL查询来实现,本文给大家介绍了几种常用的方法,并通过代码示例讲解的非常详细,需要的朋友可以参考下
    2024-05-05
  • 基于postgresql数据库锁表问题的解决

    基于postgresql数据库锁表问题的解决

    这篇文章主要介绍了基于postgresql数据库锁表问题的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 如何修改Postgresql默认账号postgres的密码

    如何修改Postgresql默认账号postgres的密码

    PostgreSQL数据库创建一个postgres用户作为数据库的管理员,密码随机,所以需要修改密码,这篇文章主要给大家介绍了关于如何修改Postgresql默认账号postgres的密码,需要的朋友可以参考下
    2023-10-10
  • Postgresql数据库角色创建登录详解

    Postgresql数据库角色创建登录详解

    这篇文章主要为大家介绍了Postgresql数据库角色创建登录详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02

最新评论