如何将小数转换为日期?

时间:2014-06-20 08:10:19

标签: sql date decimal valueconverter

我有问题。我有一个字段START_VALUE,其中数据类型为十进制。我想将十进制转换为日期。

数据类型START_VALUE是十进制.START_VALUE的数据是:

START_VALUE |=========| | 240368 | | 198448 | | 197396 | | 126743 |

我想转换为Datetime,我想要的是'yyyy-mm-dd 00:00:00.000'

我不知道该值是否为Julian date或者。请帮我找到正确的选择查询。 谢谢。

2 个答案:

答案 0 :(得分:1)

你在找这个吗?

CREATE FUNCTION Number_To_Date(No_Of_Days NUMBER)
RETURN DATE IS
BEGIN
  RETURN to_date('1899-12-30', 'YYYY-MM-DD') + No_Of_Days;
END;

答案 1 :(得分:0)

您可以在SQL Server中使用以下查询将其解析为日期时间

SELECT CONVERT(DATETIME, SUBSTRING(CAST(START_VALUE
 as varchar(8)),1,2) + '-' + SUBSTRING(CAST(START_VALUE
 as varchar(8)),3,2) + '-' + SUBSTRING(CAST(START_VALUE
 as varchar(8)),5,2),5) AS DateTimeValue

FROM Table

如果您使用的是Oracle,则可以使用以下查询

SELECT TO_DATE(CAST(START_VALUE AS VARCHAR(8), 'DDMMYY') FROM Table