使用SSIS 2013,我有一个表格,其发票日期以YYYYMMDD
的格式存储为整数,我需要根据以下内容确定月份日期的开头和月份日期的结束日期。发票日期。开始日期和结束日期也将存储为整数。
例如我的发票日期是:20170512
我想要回复:20170501
(BeginDate)
和20170531(EndingDate
)
答案 0 :(得分:1)
您可以使用以下表达式"
添加两个派生的COlumns 这些表达式将返回DT_DATE
第一天:
(DT_DATE)(LEFT([InvoiceDate],4) + "-" + SUBSTRING([InvoiceDate],5,2) + "-01")
最后一天:
DATEADD("d",-1,DATEADD("m",1,(DT_DATE)(LEFT([InvoiceDate],4) + "-" + SUBSTRING([InvoiceDate],5,2) + "-01")))
如果您需要返回两列格式相同的YYYYMMDD
第一天:
LEFT([InvoiceDate],4) + "-" + SUBSTRING([InvoiceDate],5,2) + "-01"
最后一天:
LEFT([InvoiceDate],4) + "-" + SUBSTRING([InvoiceDate],5,2) + RIGHT("0" + (DT_WSTR,2)DAY(DATEADD("d",-1,DATEADD("m",1,(DT_DATE)(LEFT([InvoiceDate],4) + "-" + SUBSTRING([InvoiceDate],5,2) + "-01")))),2)