在我的SSIS包中,我必须将DateTime的值转换为相应的INTEGER值。以下是提供的示例。
有什么想法可以让我转换这些吗?
DATETIME INT
--------- ----
1/1/2009 39814
2/1/2009 39845
3/1/2009 39873
4/1/2009 39904
5/1/2009 39934
6/1/2009 39965
7/1/2009 39995
8/1/2009 40026
9/1/2009 40057
10/1/2009 40087
11/1/2009 40118
12/1/2009 40148
1/1/2010 40179
2/1/2010 40210
3/1/2010 40238
4/1/2010 40269
5/1/2010 40299
6/1/2010 40330
编辑:在最近版本的SQL Server中,向float/int的投递不再有效。请使用以下方法代替。
select datediff(day, '1899-12-30T00:00:00', my_date_field) from mytable
注意字符串日期应该是一个明确的日期格式,这样它就不会受到你的服务器区域设置的影响。
在旧版本的SQL Server中,你可以通过转换为浮点数,然后再转换为整数,将DateTime转换为整数。