postgresql 字符串转date 如下 201610101010 12位varchar 转换为时间类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postgresql 字符串转date 如下 201610101010 12位varchar 转换为时间类型相关的知识,希望对你有一定的参考价值。

因为要做一个where条件
adate varchar(12) 201610101010
要筛选 adate > 系统时间 的数据。

参考技术A 你的adate的格式是否为年月日时分(示例就变成2016-10-10 10:10),可以用to_timestamp转换为日期时间值:
to_timestamp(adate, 'YYYYMMDDHH24MI')
不过,从你的需求来看,adate可能为数据表的字段,要提高执行效率的化,应该是将系统时间转换为字串来进行比较,而不是将字段值转换为日期时间值来比较。因为将字段转换为日期时间值后比较的化,肯定不能使用索引了(除非你定义了转换后的索引),而且每次查询都有左转换效率太差了。故这样来做筛选条件会比较好些:
where adate > to_char(current_timestamp, 'YYYYMMDDHH24MI')本回答被提问者和网友采纳

以上是关于postgresql 字符串转date 如下 201610101010 12位varchar 转换为时间类型的主要内容,如果未能解决你的问题,请参考以下文章

Postgresql时间戳long转日期,转字符串,转timestamp,日期转换错误定位及解决

PostgreSQLPostgreSQL语法

javaBean中 字符串 转 date 类型转换

Linux date命令的用法(转)

带有时区的 PostgreSQL date()

%date~0,4%和 %time~0,2%等用法详解(转)