pg的Unix时间戳(Unix timestamp)转字符串

在项目中发现使用的是时间戳,不直观显示日期,写了函数进行转换

CREATE OR REPLACE FUNCTION timestamp_to_datestr(date BIGINT)  
  RETURNS VARCHAR AS  
$BODY$  
	--由时间戳转换成日期字符串 参数形如:1323083400000 转换后为2011-12-05 19:10:00  
DECLARE  
	result VARCHAR;  
BEGIN
	result := to_char((TIMESTAMP WITHOUT TIME ZONE 'epoch' + (date/1000) * INTERVAL '1 second' + interval '8 hour'),'YYYY-MM-DD HH24:MI:SS');
	RETURN result;  
END;  
$BODY$  
  LANGUAGE 'plpgsql' VOLATILE;

调用方法

select update_date,timestamp_to_datestr(create_date),create_date from test;
相关文章
相关标签/搜索