我有一个名为tran_datetime
的字段,它是一个14位数字字段。
值存在于20130216131736 ...即2013-02-16 01:17:36 PM
在我的查询导出中,我需要将最后6位数转换为TimeStamp 。
这是我发现的最接近的版本。
(SUBSTRING(tran_datetime,9,2) || ':' || SUBSTRING(tran_datetime,11,2) || ':' || SUBSTRING(tran_datetime,13,2)) ,
但这是以13:17:36返回。我正试图找到一种方法将其转换为01:17:36 PM格式。
像这样......
to_char((SUBSTRING(tran_datetime,9,2) || ':' || SUBSTRING(tran_datetime,11,2) || ':' || SUBSTRING(tran_datetime,13,2)), 'HH12:MI:SS')
或
cast((SUBSTRING(tran_datetime,9,2) || ':' || SUBSTRING(tran_datetime,11,2) || ':' || SUBSTRING(tran_datetime,13,2)) as TIMESTAMP)
但我尝试的大多数内容都会出错,最常见的是Timestamp out of range
答案 0 :(得分:2)
这对你有用。
select to_char(cast('131736' as time),'HH12:MI:SS AM')
如果我做了一个错误的假设请发表评论,我会重新调整我的答案。
答案 1 :(得分:0)
这会将其转换为时间戳:
2013-02-16 13:17:36+00
输出:
select to_char(to_timestamp(20130216131736::text, 'YYYYMMDDHH24MISS'), 'HH12:MI:SS AM')
获取该输出,这将为您提供所需的格式:
01:17:36 PM
输出:
when
要在查询中使用它,如果该字段为select to_char(to_timestamp(when::text, 'YYYYMMDDHH24MISS'), 'HH12:MI:SS AM')
:
{{1}}
另见:
答案 2 :(得分:0)
基于John的例子,这里是实际修复此脚本的脚本......
errorPlacement: function(error, element) {
if ( element.is(":radio") ) {
error.insertAfter( element.parent().parent().parent().parent());
}
else { // This is the default behavior of the script for all fields
error.insertAfter( element );
}
},