SSIS中生成日期
Ricky
posted @ 2013年5月17日 14:22
in Other
, 1635 阅读
GetDate()返回带时间的日期格式,如果只需要日期部分则需要转换,这时候cast/convert则无法使用了,
可用如下办法生成系统时间前一天日期的整数形式:
DATEPART("yyyy",(DT_DBDATE)DATEADD("day",-1,GETDATE())) * 10000 +
DATEPART("mm",(DT_DBDATE)DATEADD("day",-1,GETDATE())) * 100 +
DATEPART("dd",(DT_DBDATE)DATEADD("day",-1,GETDATE()))
当然需要字符串格式则很简单了:
(DT_WSTR,30)(DT_DBDATE)(dateadd("d",-1,getdate()))
如果需要不同的形势,拼接就可以了:
(DT_STR,4,65001)DATEPART("yyyy", GetDate() ) +
RIGHT("0" + (DT_STR,4,65001)DATEPART("mm", GetDate() ), 2) +
RIGHT("0" + (DT_STR,4,65001)DATEPART("dd", GetDate() ), 2)
参考
http://www.w3school.com.cn/sql/func_convert.asp