我正在将.CSV文件导入SQL服务器。数据文件有计数和美元金额。我想使用以下公式为插入到SQL(上个月的第一个)添加一个日期字段:
SELECT convert(varchar, DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE())-1, 0), 101)
我在哪里/怎么做?我尝试了一个派生列,但它不喜欢表达式字段中的公式。
谢谢!
答案 0 :(得分:0)
尝试将此表达式添加到派生列。应该得到你想要的东西:
(DT_DBDATE)DATEADD("day",-(DATEPART("day",DATEADD("Month",-1,GETDATE()))) + 1,DATEADD("Month",-1,GETDATE()))
答案 1 :(得分:0)
派生列表达式:
(DT_DBDATE)DATEADD("MONTH",-1,((DT_DATE)((DT_STR,2,1252)MONTH(aDate) + "/01/" + (DT_STR,4,1252)YEAR(aDate))))
您必须确保如果您当前的日期是1月份的某一天,则前一个月将会降到去年。例如:
Current Date First of previous month
02-15-2013 01-01-2013
12-15-2013 11-01-2013
01-15-2013 12-01-2012 (notice the year)