0
在下面的代码中,我声明了开始日期和结束日期。这两个日期均来自系统日期。我每天运行这个代码。从今天的日子到今天的日期每天运行代码-400
Declaration type 1
DECLARE @StartDate string = DateTime.Now.AddDays(-30).ToShortDateString();
DECLARE @EndDate string = DateTime.Now.AddDays(-33).ToShortDateString();
Declaration type 2
DECLARE @StartDate string = DateTime.Now.AddDays(-30).ToString(yyyy/mm/dd);
DECLARE @EndDate string = DateTime.Now.AddDays(-33).ToString(yyyy/mm/dd);
DROP VIEW IF EXISTS dbo.test;
CREATE VIEW IF NOT EXISTS dbo.test
AS
EXTRACT ID1 int?,
ID2 int?,
MeasureDate DateTime,
Value float,
date DateTime
FROM
"adl://eclwpsdatalake.azuredatalakestore.net/testfolder/{date:yyyy}/{date:MM}/{date:dd}/Reading.csv"
USING Extractors.Csv(silent : true, quoting : true, nullEscape : "/N");
@xyz =
SELECT *,
MeasureDate.ToShortDateString() AS DateShort
FROM test
WHERE Value!=-999 AND date BETWEEN @StartDate AND @EndDate;
我想使用系统日期作为开始日期和结束日期=(systemdate-400天)。在运行此代码时,在作业图中显示空白输入,最终文件大小为0 MB。我的假设是“日期”列的格式与开始日期结束日期不匹配。
其实'DateTime.Now'应该是在编译时快照,以便你多少次在脚本中引用它直接,你应该只得到在脚本一个值,而不管。你观察到不同的东西吗? –
@Michael Rys:不,这只是防守编程肌肉记忆;) –