Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL:将数字转换为时间_Sql_Oracle - Fatal编程技术网

SQL:将数字转换为时间

SQL:将数字转换为时间,sql,oracle,Sql,Oracle,我有一个数据库列,它具有以下值 column (hh/mm/ss) 042336 050623 现在使用sql,我想将其转换为 column 04:23:63:000 05:06:23:000 我一直在尝试使用date函数,但没有成功。您有一个字符串,因此可以使用字符串操作插入其他字符: select (substr(x, 1, 2) || ':' || substr(x, 3, 2) || ':' || substr(x, 5, 2) || ':000') from (select '04

我有一个数据库列,它具有以下值

column (hh/mm/ss)
042336
050623
现在使用sql,我想将其转换为

column
04:23:63:000
05:06:23:000

我一直在尝试使用date函数,但没有成功。

您有一个字符串,因此可以使用字符串操作插入其他字符:

select (substr(x, 1, 2) || ':' || substr(x, 3, 2) || ':' || substr(x, 5, 2) || ':000')
from (select '042336' as x from dual) t

什么是
:000
?它是毫秒数…我想附加它,因为000您的原始列是CHAR/VARCHAR还是其他?整数不能有前导
0
此处不允许使用“maybe:)。首先找出你的列类型。如果VARCHAR@GordonLinoff的答案不是字符串,那么他有一个整数;)这似乎是一种粗暴的方式……是否可以通过to_date或to_Timestamp来执行?如果您不将日期/时间值存储在正确的声明类型列中,它总是以粗暴的方式结束。这是一开始不做这件事的主要原因place@ThomasG . . . 整数不是以
0
开头的。此外,Oracle没有
time
数据类型,因此这里没有很多选择。