我有一个从平面文件接收日期字段的程序包。这个日期是否可以快速转换为同一月的最后一个日期?
例如 输入:01.08.2019 输出:31.08.2019
非常感谢
答案 0 :(得分:2)
一种实现方法是通过Lookup
。
包装-
因此,基本上,您阅读了文件,然后将它们传递给Lookup
,它们将针对每个文件运行,并在数据库中查询以找出输入日期是月的最后一天。
您需要建立数据库查询的OLEDB
连接,而在SQL
下面的查询将为您完成工作-
DECLARE @date VARCHAR(10) = ?
SET @date = REPLACE(@date,'.','/');
SET @date = CONVERT(CHAR(10),CONVERT(DATETIME,LEFT(@date,10),105),101);
SET @date = EOMONTH(@date);
SET @date = SUBSTRING(@date, 9, 2) + '/' + SUBSTRING(@date, 6, 2) + '/' + SUBSTRING(@date, 1, 4);
SELECT REPLACE(@date,'/','.') AS Result;
答案 1 :(得分:2)
我经常使用这个:
将@d替换为您的日期列。
dateadd("d",-1, --Gets last day of current month
dateadd("mm",1, --Gets 1st day of next month
(DT_DATE)(month(@d) + "/1/" + year(@d)) -- Gets first day of current month
))