如何从存储过程执行的结果转换DATETIME2为日期时间? 我有将执行这将具有其中有一些DATETIME2数据类型各列的输出的动态形成的SQL语句的过程。 我怎样才能改变这种状况DATETIME2为datetime,因为我haev这一程序作为数据源分配给水晶报表,但水晶报表转换DATETIME2到字符串,字符串不能做需要的逻辑报告。 所以我想程序给日期时间,而不是DATETIME2。
我想临时表可能会帮助我,但不知道如何着手..请帮助..
如何从存储过程执行的结果转换DATETIME2为日期时间? 我有将执行这将具有其中有一些DATETIME2数据类型各列的输出的动态形成的SQL语句的过程。 我怎样才能改变这种状况DATETIME2为datetime,因为我haev这一程序作为数据源分配给水晶报表,但水晶报表转换DATETIME2到字符串,字符串不能做需要的逻辑报告。 所以我想程序给日期时间,而不是DATETIME2。
我想临时表可能会帮助我,但不知道如何着手..请帮助..
假设DATETIME2字段字符串看起来像它在MS SQL的确/ ISO 8601(见DATETIME2(的Transact-SQL) ):“2007-05-02T19:58:47.1234567”,你可以拉出来的字符串需要的部分,然后用CDate
或CDateTime
将它们转换为日期或日期时间。
If IsDate(left({Results.DT2Field}, 10))
Then
CDate(left({Results.DT2Field}, 10));
或日期时间
If IsDateTime(left({Results.DT2Field}, 10) + " " + mid({Results.DT2Field},12,8))
Then
CDateTime(left({Results.DT2Field}, 10) + " " + mid({Results.DT2Field},12,8));
以上的结果是转换后的值。